python - 从文件夹中导入所有模块,从所有已知名称的模块中执行功能
问题描述
好吧,我的任务很艰巨,而且我完全被困住了,就像在任何方向上一样。
应该做什么程序:
- 从文件夹导入所有模块(名称是随机的)
MainScript.py modules/ mod1.py mod2.py mod3.py ...
- 执行特定(已知名称,并且在任何地方都相同)功能。
mod1.main()
mod2.main()
mod3.main() ...
据我了解,我应该列出文件夹中的所有文件,然后列出它们,并为列表导入模块中的每个 [x] 列出并执行脚本。我发现modules[0].main()
只有在没有字符串的情况下才有效,所以它不modules[0]
应该是. 所以我需要以某种方式处理它......但我不知道......modules[0]=main
modules[0]='main'
import
我已经用谷歌搜索过了,只找到了https://stackoverflow.com/a/1057534/10289135 我想它对我不起作用(我也不明白它是如何工作的,脚本对我不起作用)
有任何想法吗?
解决方案
您可以使用以下语法:
从文件名(删除 .py)导入 *
这是一个通配符导入,它从一个模块中导入所有的东西。通过这样做,你不需要做像'filename.blabla'这样的工作,但你可以做'blabla'。
推荐阅读
- html - 为什么我在材料-ui-v3.2.0“图像头像”示例中看不到图像
- python - 按列表中的元组顺序将多个元组列表组合成新的元组列表(python3)
- python - 导入包适用于 jupyter notebook 但不适用于 iPython 和 Anaconda cmd
- ios - Xcode 10 更新:基于弃用的编译器错误
- python - Django的json问题:'tuple'对象没有属性'_meta'
- python - Python - Pandas,重新采样数据集以具有平衡的类
- mysql - mysql在同一张表上写选择子查询,结果集上有条件
- bootstrap-4 - 在所有其他屏幕上隐藏表格列而不是大屏幕
- odoo - 隐藏按钮编辑,在 odoo xml 上创建
- activerecord - Papertrail 轨道通过关联创建但不删除