파이썬이 모듈을 다시로드하는 방법을 배우려하고 있지만로드 블록을 쳤습니다. 의 내가 있다고 가정 해 봅시다 :다른 파일로 가져온 Python 모듈을 다시로드하는 방법은 무엇입니까?
dir1\file1.py
을 :
from dir2.file2 import ClassOne
myObject = ClassOne()
dir1\dir2\file2.py
을 :
class ClassOne():
def reload_module():
reload(file2)
다시로드 호출이 모듈 "파일 2"를 찾기 위해 실패합니다.
제 질문은 모든 것을 한 파일에 보관하지 않고도 어떻게 올바르게 수행 할 수 있습니까?
관련 질문 : 리로드가 작동하면 myObject가 새 코드를 사용합니까?
는이 당신이 파일 2의 이전 버전에서 개최 된 클래스로부터 인스턴스화 한 객체의 유형을 변경하지 자체 것이다,
다시로드하는 데는 거의 사용되지 않습니다. 너 뭐하려고? –
S.Lott이 맞습니다. 예제 코드가 일반적으로 원하지 않는 것처럼 보이기 때문에 실제 사례가 무엇인지 조금 더 설명해야합니다. – balpha
기본적으로 내가하고 싶은 것은 시스템이 실행되는 동안 사용자가 변경할 수있는 편집 창에서 코드를 실행하는 객체를 갖는 것입니다. 객체는 호출되는 일반적인 "step()"함수를 가지며, 여기서 사용자는 코드를 변경해야합니다. 이렇게하면 프로그램이 실행될 때 개체의 동작이 변경됩니다. – user129975