3
파이썬 패키지가 있으면 자동으로 모든 하위 패키지를 어떻게 찾을 수 있습니까?Python 달걀 안에있을 때에도 패키지 안에있는 모든 패키지 찾기
필자는 파일 시스템을 탐색하고 파일에 __init__.py*
파일이있는 폴더를 찾는 기능을 사용 했었지만 지금은 전체 패키지가 계란에 있어도 작동 할 방법이 필요합니다.
파이썬 패키지가 있으면 자동으로 모든 하위 패키지를 어떻게 찾을 수 있습니까?Python 달걀 안에있을 때에도 패키지 안에있는 모든 패키지 찾기
필자는 파일 시스템을 탐색하고 파일에 __init__.py*
파일이있는 폴더를 찾는 기능을 사용 했었지만 지금은 전체 패키지가 계란에 있어도 작동 할 방법이 필요합니다.
pkgutil이 도움이 될 수 있습니다.
또한 this SO question.을 참조하십시오. 이것은 코드 예제 양식 that question입니다.
import pkgutil
# this is the package we are inspecting -- for example 'email' from stdlib
import email
package = email
for importer, modname, ispkg in pkgutil.iter_modules(package.__path__):
print "Found submodule %s (is a package: %s)" % (modname, ispkg)
import pkgutil
for importer, modname, ispkg in pkgutil.walk_packages(path=None, onerror=lambda x: None):
print(modname)