2013-06-12 2 views
0

내 코드가 프로덕션 환경에서 a.b.smething에 있고 내 경로가 내 cvs 저장소에 있다고 가정합니다. 어떻게 파이썬이 모듈의 로컬 변경 사항을 선택하게합니까?파이썬에서 모듈의 로컬 복사본 가져 오기

Perl에서 이것은 스크립트를 실행하는 동안 perl -I 호출을 통해 가능합니다. 나는 폭까지 검색 한 다음과 같은 대안을 어떤 좋은 찾을 수 없습니다 :

  1. 을 os.path를 사용하여 경로 또는 뭔가를 설정 로컬 폴더에 모듈 또는
  2. 복사 등

Perl 호출이나 경로를 변경하는 다른 쉬운 방법 (코드를 건드리지 않고)과 같은 미묘한 것을 찾으십시오.

감사합니다.

+3

당신이 당신의 $의 PYTHONPATH의 새로운 서브 디렉토리에 설치할 수 있습니까? 아니면 [VirtualEnv] (http://iamzed.com/2009/05/07/a-primer-on-virtualenv/)를 사용할 수 있습니까? – AlexE

+0

파이썬 프로세스의 이전 모듈을 새로운 버전의 모듈로 바꾸시겠습니까? 그런 다음'다시 불러 오기 '를 시도 할 수 있습니다 – User

+0

'로컬 복사본 '의 의미는 무엇입니까? 프로젝트 디렉토리에서 실행하면 기본적으로 플래그 나 코드를 변경하지 않고도 작동합니다. – jfs

답변

1

파이썬을 사용하면 import 내부 정보를 처리 할 수 ​​있습니다. 여기에서 자세한 내용을 찾을 수 있습니다 또는 http://docs.python.org/2/library/imp.html

sys.path가 작동하는 것 같다 수정 :

$ cat some_module.py 
def test(): 
    return "one module" 
$ cat other/some_module.py 
def test(): 
    return "the other module" 
$ python -c 'import sys; import some_module; print some_module.test()' 
one module 
$ python -c 'import sys; sys.path.insert(0, "other/"); import some_module; print some_module.test()' 
the other module 
관련 문제