2016-07-29 1 views
0

한 파일에서 다른 파일로 코드를 가져 오는 방법을 이해하려고합니다. 두 파일 file1.pyfile2.py이 있습니다. 첫 번째 파일에서 코드를 실행하고 있고 두 번째 파일에 많은 변수와 함수가 정의되어 있습니다. 에 코드를 가져 오는 데 from file2 import *을 사용하고 있습니다. 나는 아무런 문제없이 에 file2.py에 정의 된 변수를 사용하지만, 에서 함수를 사용할 때 NameError: name 'myfunc' is not defined을 얻는 중이다. from file2 import myfunc을 작성하여이 문제를 해결할 수는 있지만, *을 작성하면 해당 파일의 모든 내용을 가져올 수 있다고 생각합니다. 함수 대 변수의 차이점은 무엇입니까?모듈 가져 오기 *에서 내 함수를 가져 오지 못함

+0

여기를보세요 : HTTP ://stackoverflow.com/questions/19883870/python-from-x-import-not-importing-everything – Babyburger

답변

0

설명 된 설정을 다시 만들려고했지만 제대로 작동합니다. 다행히도 이것이 작동하게하는 방법에 대한 아이디어를 줄 수 있기를 바랍니다. 나는 2.6.6

모두 file1.py 및 file2.py이있는 파이썬 버전을 사용하고이 테스트에 대한

# file1.py ##################################### 
import sys 
sys.path.append("/home/neko/test/") 
import file2 
if __name__ == "__main__": 
    file2.testfunc() 

# file2.py ###################################### 
testvar = 'hello' 
def testfunc(): print testvar 

/홈/마네 키 네코/테스트/