나는 주위를 둘러 보았고이를위한 해결책을 보지 못했다. 내가하고 싶은 것은 런타임에 파이썬에서 사용할 수있는 모든 패키지 목록을 얻는 것입니다. 파이썬 스크립트에서 파이썬이 사용할 수있는 모든 패키지/모듈을 나열하려면 어떻게합니까?
나는이 바라 보았다 :- List all the modules that are part of a python package?
- Python package structure
- How to: get list of modules in a package
그러나 그들은 내가 무엇을 찾고되지 않습니다.
그러나import pkgutil
for pkg in pkgutil.walk_packages():
print pkg #or do something with them...
, 내가 할 때 this가 :
import sys
sys.modules.keys()
내가 뭘 원하는 하지 모든 패키지를로드 한 것으로 보인다
나는이 일을 시도 , 내가 원할 때, 모든 파이썬 설치에 사용할 수있는 모든 패키지 + 모듈의 문자열리스트를 원한다.
을 모든 종류의 후크가 있으며 파일이 모듈 또는 다른 방법으로 일치한다는 보장이 없습니다 (즉석에서 모듈을 다운로드하거나 zip 파일에서 모듈을 추출하는 것이 가능함). 그것은 walk_packages가 무엇을 의미하는지조차도 알 수 있습니다. "이 함수는 서브 모듈"*을 찾으려면'__path__' 속성에 액세스하기 위해 주어진 경로에서 모든 패키지 (모든 모듈이 아닌!)를 가져와야합니다. – spectras
(또는 더 간결하게 말하면 패키지가 완전히로드 될 때까지 어떤 서브 모듈이 패키지에 들어 있는지 알 수 없습니다.) – spectras
나는 당신의 요구가 가능하다고 생각하지 않습니다. 예를 들어, 제 3 자 패키지'six six '를 설치했다면'six.moves. *'모듈을 가져 오지 않고 존재했음을 어떻게 알 수 있습니까? – ppperry