“ modulefinder”模块中的ModuleFinder类可以确定由某个脚本导入的模块集。该模块具有命令行界面和编程界面。
为了演示功能,请使用以下脚本
#modfinder.py import hello try: import trianglebrowser import nomodule,mymodule except ImportError: pass
以下命令显示已找到和未找到的模块的列表。
E:\python37>python -m modulefinder modfinder.py
输出结果
Name File ---- ---- m __main__ modfinder.py m hello hello.py m math m trianglebrowser trianglebrowser.py Missing modules: ? mymodule imported from __main__ ? nomodule imported from __main__
此模块中的ModuleFinder类提供run_script()和report()方法,以确定脚本导入的模块集。
报告()
此方法将报告打印到标准输出,该报告列出了脚本导入的模块及其路径,以及缺少或似乎缺少的模块。
run_script()
此方法分析给定文件的内容,该文件必须包含Python代码。
模组
这是将模块名称映射到模块的字典。
坏模块
这是无法加载的模块的列表。
import modulefinder
modfind=modulefinder.ModuleFinder()
modfind.run_script('modfinder.py')
print ('Modules loaded:')
for k,v in modfind.modules.items():
print (k,v)
print ('not found:')
for i in modfind.badmodules.keys():
print (i)输出结果
Modules loaded:
__main__ Module('__main__', 'modfinder.py')
hello Module('hello', 'E:/python37\\hello.py')
trianglebrowser Module('trianglebrowser', 'E:/python37\\trianglebrowser.py')
math Module('math')
not found:
nomodule
mymodule