2016-11-28 1 views
0

일부 모듈을 작성하고 로컬 네트워크에 중앙 집중식으로 작업하고 있습니다.로컬 대신 네트워크에서 모듈 가져 오기

로 여기 제안 : Import from network

내가 네트워크 위치를 가리 키도록 내 PYTHONPATH을 변경.

문제는 내가 파이썬 셸을 가져 오면 다음과 같습니다. print my_mod.__file__ 여전히 내 로컬 디렉토리를 가리키고 있습니다.

로컬 대신 네트워크 위치에서 가져올 수있는 방법이 있지만 로컬에서 작업 할 수 있도록 두 링크를 모두 유지합니까?

감사합니다!

답변

1

예를 들어 당신이 무엇을 기대하지 않을 수 있도록 여러 가지있을 수 있습니다 :

  • 는이 검색하지 않습니다 PYTHONPATH 설정 , 여전히 다른 곳에서는 전에 현재 디렉토리에서 찾게됩니다 파이썬 .
  • 특정 모듈을 로컬 site-packages에 설치하면 .pth 파일이나 다른 가져 오기 속임수를 사용하면 먼저 가져올 수 있습니다.
  • 로컬 디렉토리에 가져 오기 대상 파일이없는 .pyc 파일이 없는지 확인하십시오.

파이썬 셸에서 import sys; print(sys.path)을 실행하여 순서대로 검색되는 경로를 확인할 수 있습니다.

이 솔루션은 sys.path에서 첫 번째 요소로 수동으로 네트워크 위치를 넣어 아마도 :

import sys 
sys.path.insert(0, "/network/modules/location") 
import thing_you_want