是否可以在python脚本中多次导入python文件,因为我使用import命令在函数中运行循环回我的驱动程序文件,但它只能运行一次?感谢
编辑:自己解决了谢谢
答案 0 :(得分:7)
你很可能不应该使用import来做你想做的事。
如果没有进一步的信息,我只能猜测,但你应该将你从顶层导入的模块中的代码移动到一个函数中,进行一次导入,而不是简单地从你循环调用函数。
答案 1 :(得分:4)
最简单的答案是将您尝试运行的代码放在像
这样的函数中(在您现在导入的模块内):
def main():
# All the code that currently does work goes in here
# rather than just in the module
(执行导入的模块)
import your_module #used to do the work
your_module.main() # now does the work (and you can call it multiple times)
# some other code
your_module.main() # do the work again
答案 2 :(得分:1)
import语句 - 按定义 - 只导入一次。
如果需要,您可以尝试使用execfile()
(或eval()
)多次执行单独的文件。
答案 3 :(得分:1)
虽然Tom Ley的回答是正确的方法,但 可以使用内置的重新加载多次导入模块。
module.py:
print "imported!"
>>> import module
imported!
>>> reload(module)
imported!
<module 'module' from 'module.pyc'>
请注意,重新加载会返回模块,允许您在必要时重新加载它。