Python 动态导入重载 (imp.load_source)

4 投票
1 回答
3693 浏览
提问于 2025-04-17 06:20

我正在使用python2.5。我需要动态导入一个模块,然后在它发生变化时重新加载。请问我该怎么做。

我尝试了下面的例子 - 但没有成功:

import imp
modfile = 'mymod_info.py'
modname = 'mymod'
modhandle = imp.load_source (modname, modfile)
reload (modhandle)

静态导入和重新加载是可以的(但我并不想要这个):

import mymod_info as mymod
reload (mymod)

提前谢谢你!

1 个回答

2

如果这个模块已经被初始化过了,使用 imp.load_source 会再次初始化这个模块。所以与其用 reload,不如直接调用

modhandle = imp.load_source(modname, modfile)

撰写回答