나는 서브 패키지 utils
(즉, 함수가있는 모듈을 각각 포함하는 서브 패키지)을 가진 파이썬 패키지 mymodule
을 가지고 있습니다. 함수는 그들이 살고있는 파일/모듈과 같은 이름을 가지고있다.같은 이름의 파이썬 모듈에서 함수/클래스 가져 오기
,
from mymodule.utils import a_function
은 이상하게도하지만, 때로는 내가 할 수 없습니다 그러나 다른 시간을 위의 표기법을 사용하여 기능을 가져올 수 있습니다. 내가 왜 비록 (최근에, 예를 들어, 나는 함수와 그 이름을 바꾸어서이 이름을 utils.__init__.py
파일에 반영했지만 더 이상 함수가 아니라 (모듈이 아닌) 하나의 함수로 가져왔다. 내 스크립트.
utils.__init__.py
는
__all__ = ['a_function', 'b_function' ...]
from a_function import a_function
from b_function import b_function
...
mymodule.__init__.py
utils
아이디어에 대한 참조가 없습니다, 같은 것을 읽어?
그래서'import mymodule.utils as utils'와'from mymodule import utils'의 차이점은 무엇입니까? –
@Mike DeSimone : 좋은 지적입니다. 그에 따라 내 대답을 업데이 트되었습니다. –