1
A
답변
4
당신은 모든 모듈은하지만, 파일에서 온 것으로
foo.__file__
주에있는 정보를 찾을 수 있습니다 (그리고 Win7에에있어). 일부 모듈은 인터프리터에 직접 컴파일되며 해당 모듈에는 __file__
특성이 없습니다.
인터프리터에 포함 된 모듈 목록은 sys.builtin_module_names
에서 찾을 수 있습니다.
0
모듈에 파일 시스템의 파일에 일대일 매핑이없는 경우 __file__
값에 대해 확실하지 않습니다. 특히 ZIP 파일 내에있는 모듈을로드하는 경우 무엇이 __file__
처럼 보이는지 잘 모르겠습니다. (필자가 그러한 매핑을 필요로 할 때 튜플을 ("path/to/file.zip", "path/within/zip/module.pyc") 사용했지만 sys.path를 수동으로 걷는 결과였다.) 방금 __file__
을 None
으로 설정하면 놀라지 않을 것입니다.
동일한 이름의 모듈을로드하는 데 문제가있는 경우 항상 sys.path
에있는 첫 번째 모듈입니다.
패키지를 처음 가져 오기 전에 수작업을 조정하기 전에 sys.path.insert(0, some_dir)
까지 입력 할 수 있습니다. (환경에서, 이것은 PYTHONPATH로 설정되어 있습니다.)
이상적으로, 당신은 PYTHONPATH
및/또는 sys.path
을 확인하여 간단하게 사용하는 확인할 수 있습니다. 잘못된 것을로드하는 경우이를 수정하는 유일한 방법은 PYTHONPATH
또는 sys.path
입니다.
관련 문제
- 1. 어떻게 파이썬 PDB에서 현재 줄을 나열합니까?
- 2. 파이썬 문자열에서 줄을 (제출하지)
- 3. 파이썬 스크립트에서 태그 다음의 줄을 어떻게 복사합니까?
- 4. 이맥스에서 파이썬 코드 접기?
- 5. 파이썬 코드 도움말
- 6. 어떻게 파이썬
- 7. 파이썬 코드 테스트
- 8. 작은 파이썬 코드 리팩터링
- 9. 파이썬 유니 코드 지원
- 10. 인수로 파이썬 코드
- 11. GUI에 파이썬 코드 삽입하기
- 12. 파이썬 것이다 평가하지() 코드
- 13. 파이썬 코드 최적화
- 14. 인쇄 파이썬 코드 아래에서
- 15. 메모장에서 파이썬 코드 디버깅 ++
- 16. 파이썬 스레드 종료 코드
- 17. 파이썬 짧은 코드
- 18. 목록으로 파이썬 통화 코드
- 19. 파일의 모든 줄을 출력하는 방법 파이썬
- 20. 파이썬 스트립() 유니 코드 문자열?
- 21. 파이썬 : Tex에서 \ input과 같은 파이썬 코드 부분을 입력하는 방법은 무엇입니까?
- 22. 파이썬 및 유니 코드 stderr
- 23. cURL 명령 줄을 파이썬 스크립트로 변환
- 24. 표준 파이썬 라이브러리와 유니 코드
- 25. 파이썬
- 26. 파이썬
- 27. 내 파이썬 코드 개선을위한 공간?
- 28. 파이썬 유니 코드 문자열과 파이썬 대화 형 인터프리터
- 29. 파이썬 :
- 30. 파이썬
일부는 C에서 컴파일되며 소스 코드를 직접 사용할 수 없습니다. –
감사합니다. Sven. 하지만 파이썬은 내가 가져온 모듈에 __ file __ 애트리뷰트 (기본 __bold__ 비헤이비어를 방지하기 위해 추가 된 스페이스)가 없다고 말했고 인터프리터에서는 컴파일되지 않았다. Python 0.2.2와 Python 소스 코드를 별도로 구분하여 Python 0.2.2를 내 장고 프로젝트 위치에 복사했습니다. – Trindaz
사실, 인터프리터로 컴파일되지 않은 모든 모듈은 C 확장자이거나'.pyc' 파일이나 다른 것으로부터로드 된 것과 관계없이'__file__' 속성을 가져야합니다. 어떤 버전의 파이썬을 사용하고 있습니까? 어쨌든'imp.find_module()'을 사용하여 파이썬이 어떤 파일을 임포트 할지를 알아볼 수도 있습니다. –