나는 이해할 수없는 상황에 처하게되었다. (실행 가능한)파이썬에서 전역 변수 가져 오기 두 가지 방법으로
one.py : 나는 세 개의 파일이
import two
import three
three.init()
two.show()
two.py :
import three
def show():
print(three.test)
three.py :
결과가 1test = 0
def init():
global test
test = 1
, 내가 예상했던대로. 이제 two.py를 수정 해 보겠습니다.
from three import test
def show():
print(test)
결과는 0입니다. 왜 그렇습니까?
를이 때문에'의 세 수입 test'의 .. 두 번째 two.py에서는 'test'만 가져오고, 이는 three.py에서'0'과 같습니다. –
긴 이야기를 짧게하기 위해서 : 두번째 경우'test'는'two.py'에 국한되어 있으므로'three.test'를 리 바인딩하면'two.test'에 영향을 미치지 않습니다 (두 개의 다른 이름입니다). 자세한 내용은 다음을 참조하십시오. https://nedbatchelder.com/text/names.html –