小编Dan*_*n G的帖子

如何动态导入模块?

我正在尝试在 Python 中动态导入模块。现在,我有一个名为“modules”的目录,里面有两个文件;它们是 mod1.py 和 mod2.py。它们是返回时间的简单测试函数(即mod1.what_time('now')返回当前时间)。

从我的主应用程序,我可以导入如下:

sys.path.append('/Users/dxg/import_test/modules')
import mod1
Run Code Online (Sandbox Code Playgroud)

然后执行:

mod1.what_time('now') 
Run Code Online (Sandbox Code Playgroud)

它有效。

我并不总是会知道目录中有哪些模块可用。我想import如下:

tree = []
tree = os.listdir('modules')

sys.path.append('/Users/dxg/import_test/modules')

for i in tree:
  import i
Run Code Online (Sandbox Code Playgroud)

但是我收到错误:

sys.path.append('/Users/dxg/import_test/modules')
import mod1
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

python import module dynamic-import

9
推荐指数
1
解决办法
2万
查看次数

标签 统计

dynamic-import ×1

import ×1

module ×1

python ×1