나는 큰 배열을 생성하기위한 코드를 포함하고있는 파이썬 모듈을 가지고 있으며 이것을하기위한 여러 함수를 포함하고있다. 그것은 "참조 된 할당하기 전에"예외를 throw로파이썬에서 변수의 범위를 다루는 방법
var1 = 0
var2 = 0
var3 = 0
var4 = 0
var5 = 0
var6 = 0
def main():
foo()
moo(var1,var2)
noo(var6)
def foo():
Math using vars
def moo():
More math
def noo():
More math
그러나, 나는 먼저이 각각의 기능 안에 그들을 무시하지 않고 바르 1-6을 사용할 수 없습니다 : 이것은 내가 지금 그것을 가지고하는 방법입니다. 이 작업을 수행하는 가장 좋은 방법은 전 세계를 사용하는 것일 수 있지만 심하게 눈살을 찌푸리게하는 것 같습니다. 글로벌이 권장되지 않는 이유는 무엇입니까? 여기에서 사용하는 것이 받아 들여질 수 있습니까? 이것에 대해 어떻게해야합니까?
세계는 싫은가요? 이런 상황에서 사용할 수 있습니까? –
예 전역 코드는 단지 임시 코드가 아닌 한 피해야합니다. 매개 변수로 전달하는 것이 좋습니다. – specialscope