Przy deklarowaniu stałej, która jest używana tylko jedna funkcja, czy ta zmienna powinna być zadeklarowana lokalnie, ponieważ jest używana tylko przez tę funkcję, czy globalnie, ponieważ nigdy się nie zmieni?(python) Czy moja zmienna powinna być lokalna czy globalna? (najlepsza praktyka)
IE, co jest lepsze:
CONSTANT = (1, 3, 5, 8)
##SOME OTHER CODE HERE
def function1(arg):
if arg in CONSTANT:
do something
czyli
def function1(arg):
CONSTANT = (1, 3, 5, 8)
if arg in CONSTANT:
do something
wiem, że nie jest dużo różnica między tymi dwoma, ale chciałem tylko wiedzieć, które z tych dwóch praktyk jest preferowany, ponieważ dopiero zaczynam i chcę tworzyć dobre nawyki.
Dobre pytanie. :) Ale czy 'CONSTANT' jest używany więcej niż jeden raz? przykład sugeruje, że nie, ale możesz to wyjaśnić. Jeśli używasz go tylko raz, prawie nie ma potrzeby nadawania mu nazwy, więc możesz chcieć pokazać, że naprawdę zamierzasz go używać wielokrotnie w funkcji. – EOL
Osobiście wolę nazywać rzeczy, nawet jeśli nie sądzę, że zamierzam ich użyć dwa razy, zwykle z miłym komentarzem wyjaśniającym, co oznacza stała. Jestem zwolenniczką nie używania literałów w moich wyrażeniach, * zwłaszcza * jeśli są używane więcej niż jeden raz. Ale w przypadkach, w których są używane dokładnie raz, widzę to na swój sposób. – acjay