2016-08-30 4 views
1

나는 상당히 깊이 중첩 된 파이썬 모듈, 예를 들어 라이브러리를 개발하고 있어요 :미리 정의 된 파이썬 별칭 모듈?

\MyTools 
    __init__.py 
    \HydroTools 
     __init__.py 
     \bin 
     \Code 
      __init__.py 
      hydro.py 
    \TerraTools 
     __init__.py 
     \bin 
     \Code 
      __init__.py 
      terra.py 

미리의 모듈에 대한 별명을 정의 할 수있는 방법이 있나요 (아마도 초기화 평을 수정하여이?) 대신에 ...

from MyTools.HydroTools.Code import hydro 
from MyTools.TerraTools.Code import terra 

가져 오는 ... 내가 좋아하는 청소기 뭔가를 할 수 있도록

from MyTools import hydro, terra 
+2

가져올 경우는'은'MyTools''__init __ py'에서 hydro'과'terra'는, 그들은 다음 MyTools''에서 가져올 수 있습니다. – FamousJameous

+1

예, 최상위 레벨'__init __. py'에서는 처음에 점을 사용하여 정확한 수입을 추가합니다 :'.MyTools.HydroTools.Code import hydro'에서부터 최상위 패키지에서 사용할 수 있습니다. –

답변

3

모듈 네임 스페이스 위에 이러한 중첩 패키지를 넣으려고합니다. MyTools/__init__.py 추가에

:. 당신이 원하는 것처럼

from .HydroTools.Code import hydro 
from .TerraTools.Code import terra 
관련 문제