2014-04-29 6 views
1

현재 나의 디렉토리에는 foo1.py 스크립트와 foo2.py 스크립트가있는 other라는 디렉토리가 있습니다. 이제스크립트와 파이썬 인터프리터의 관계

:

나는 인터프리터를 시작, 내가 두 스크립트를 실행할 수 있습니다 execfile을 사용. 문제는 편집하고 foo1.py을 저장할 때 인터프리터를 다시 시작할 필요가 없습니다. 다시 execfile을 다시 실행하면 수정 된 내용으로 실행되지만 foo2.py과 같은 문제는 발생하지 않습니다. 편집을 위해서 내가 foo2.py을 만들었습니다. 나는 그걸 저장 한 후에도 이후에 같은 스크립트를 실행할 것이기 때문에, 그만두고 해석기를 다시 시작해야합니다.

계속 편집하고 싶었 기 때문에 이것은 귀찮습니다. 그리고 종종 서로에 의존하는 후발에서 여러 스크립트를 시작 ...

어떻게하면 인터프리터가 내 편집 내용을 foo2.py으로보고 다시 시작할 필요없이 만들 수 있습니까?

감사합니다.

답변

1

reload() 함수 및 거기에 언급 된 제한 사항에 대한 설명서를 살펴보십시오. 귀하의 파이썬 버전에 따라 그것은 다른 모듈에 위치하고 있으며, 2.x에 대해서는 미리 정의되어 있습니다.

1

당신은 "최근"파이썬을 사용하는 경우, 다음과 같은 파이썬 2.6, 2.7와 호환 구문 및 3.x

with open('foo2.py') as file: 
    exec(compile(file.read(), 'foo2.py', 'exec')) 
을 시도 할 수