파이썬 프로그램을 실행하면서 파이썬 파일을 만들고 있습니다. 그런 다음이 파일을 가져 와서 정의 된 함수를 실행하려고합니다. 내가 만드는 파일은 경로 변수에 저장되지 않으므로 그대로 유지하는 것이 좋습니다.동적으로 생성 된 파이썬 파일 가져 오기
원래는 execFile(<script_path>)
함수를 호출하고 파일을 실행하여 정의 된 함수를 호출했습니다. 이것은 항상 __name__ == "__main__"
조건에 들어가는 부작용이 있는데, 현재 설정으로는 그럴 수 없습니다.
생성 된 파일을 변경할 수 없습니다. 이미 100 개를 생성 했으므로 수정하지 못했습니다. 생성 된 파일을 호출하는 파일 만 변경할 수 있습니다. 나는 사람에게 제대로 말을 이해한다면 기본적으로 내가 지금 무엇을
...
#<c:\File.py>
def func(word):
print word
if __name__ == "__main__":
print "must only be called from command line"
#results in an error when called from CallingFunction.py
input = sys.argv[1]
#<CallingFunction.py>
#results in Main Condition being called
execFile("c:\\File.py")
func("hello world")
관련없는 팁 : 코드에서 파일 이름에 백 슬래시를 사용하지 마십시오. "c : /file.py"라고 씁니다. Windows에서 작동하며 경로를 파싱하는 모든 것에 대해 훨씬 일관성이 있습니다. –