본문 바로가기

카테고리 없음

[python] 파일분할, 전역변수를 다른 파일에서 수정

myAlgorithm.py에 변수와 함수들을 모아놓고 main.py에서 사용하려고 한다.

main.py에는 from myAlgorithm import * 를 한 상태.

 

<myAlgorithm.py>

 

<main.py>

 

main.py에서 testFunc()를 호출했을 때 test: main test가 나오길 기대했지만 test: do right가 나왔다.

왜인지 모르겠다..

 

나의 결론: 파이썬의 import는 단순 코드 복사와는 다르다.

 

 

<cyclical dependency 는 안좋은 것>

stackoverflow.com/questions/3400525/global-variable-from-a-different-file-python

 

Global Variable from a different file Python

So I have two different files somewhat like this: file1.py from file2 import * foo = "bar"; test = SomeClass(); file2.py class SomeClass : def __init__ (self): global foo; p...

stackoverflow.com

<그럼에도 하는 방법>

instructobit.com/tutorial/108/How-to-share-global-variables-between-files-in-Python

 

----------------------------------------------------------------------------------------

출석부를 자동으로 긁어오는 프로그램을 만들고 있었는데

main.py, myAlgorithm.py가 있다.(위에서 설명한 대로)

main.py에서 findStart를 출력해보니 0이었다.(main에서 myAlgorithm.py의 함수를 이용해서 findStart를 계속 변경했지만 반영되지 않았다는 말임)

그런데 tableEndInex는 변화가 있었다. 리스트같은 애들은 변화가 반영되나보다...일단 일관성이 없으니 이렇게 안쓰는게 좋을 듯...