지역

2014-09-15 3 views
1

내 코드 내 PYTHONPATH 경로에 내가지역

# global import 
import external_module.sub_mod_one as smo 

지금 내 코드를 공유하고 싶지만 내가 원하는하지 않는 한 포함하는 모듈 external_module에서 기능에 의존하는 외부 모듈 공동 작업자가 내 다른 git repos를 체크 아웃하고 환경에 추가하도록 강요합니다.

그래서, 나는 로컬 디렉토리에 파일을 복사하고 다시 가져 오기를

그러나
# local import 
import sub_mod_one as smo 

으로, 개발이 계속 있기 때문에, 나는 수동으로 수행하지 않으려는 수 생각했다.

질문 질문 : 파이썬 모듈이나 vim 플러그인 또는 저에게 이것을위한 다른 방법이 있습니까? 즉, 포함 된 모듈을 현재 폴더에 복사하고 import 문을 다시 작성합니까?

답변

3

"올바른"솔루션이 핍와 함께 설치 될 수 있도록 제대로 "external_module을"패키지

  1. 이며,
  2. 귀하의 프로젝트에 귀하의 패키지를 참조하는 pip 요구 사항 파일을 추가하십시오.
  3. 그런 다음 virtualenvs를 사용하는 모든 사람이 있습니다

이 방법은 패키지가 올바르게 설치되고 (올바른 버전으로) 사용자가 내보내기를 망칠 필요가 없으며 패키지의 동기화 사본이 부족하지 않습니다. 어디에나.

+0

예,이 작업을 시작해야합니다. pip와 github이 함께 사용되는 방법을 설명하는 자습서가 있습니까? – Jan

+1

다음은 git repo에서 lib를 설치하는 방법의 예입니다 :'pip install git + git : // github.com/user/project.git' –

1

조건부 수입을 사용할 수

try: 
    import external_module.sub_mod_one as smo     
except ImportError: 
    import sub_mod_one as smo 
+0

좋은 지적이지만 여전히 수동으로 파일을 복사해야합니다. – Jan

+0

Git을 사용할 수 없습니까? –

+0

이것은 여러 git repos를 결합하는 것을 의미합니다. 나 좀 어수룩 해 보인다. – Jan