Pycharm vyzve Shadows name ‘params‘ z vnějšího rozsahu

Pycharm Prompts Shadows Name Params From Outer Scope



1. K odstranění tohoto žlutého varování je zapotřebí pouze jeden znalostní bod: Variabilní skrytí Shadow stín proměnných)



Variabilní skrytí Existuje pouze jedna věta: interně definované proměnné budou blokovány Proměnná se stejným názvem definovaným rodičem



2. Důvod: Pokud je proměnná uvnitř funkce stejná jako vnější proměnná volaná funkcí, nazývá se v PyCharm název stínu



V tomto případě je snadné způsobit některé problémy, které si nelze snadno všimnout kvůli konzistenci názvů proměnných uvnitř i vně funkce:

Pokud je například při citování omylem nesprávně napsán název interní funkce, bude to vlastně volat název externí proměnné, což bude mít za následek logický zmatek.

Řešení tedy je:



3. Ujistěte se, že se názvy proměnných uvnitř a vně funkce neopakují, aby nezpůsobovaly možné chyby