列出所有属于python软件包的模块吗?

列出所有属于python软件包的模块吗?,第1张

列出所有属于python软件包的模块吗?

是的,您需要某种基于

pkgutil
或类似的东西-
这样,您可以将所有软件包都视为相同,而不管它们是放在鸡蛋还是邮编中(在os.listdir都不起作用的地方)。

import pkgutil# this is the package we are inspecting -- for example 'email' from stdlibimport emailpackage = emailfor importer, modname, ispkg in pkgutil.iter_modules(package.__path__):    print "Found submodule %s (is a package: %s)" % (modname, ispkg)

如何导入它们呢?您可以

__import__
照常使用:

import pkgutil# this is the package we are inspecting -- for example 'email' from stdlibimport emailpackage = emailprefix = package.__name__ + "."for importer, modname, ispkg in pkgutil.iter_modules(package.__path__, prefix):    print "Found submodule %s (is a package: %s)" % (modname, ispkg)    module = __import__(modname, fromlist="dummy")    print "imported", module


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/4989944.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-14
下一篇2022-11-14

发表评论

登录后才能评论

评论列表(0条)

    保存