在我当前的目录中,我有一个foo1.py
脚本和一个名为other的目录,里面有一个foo2.py
脚本。
现在:
我启动了解释器,使用execfile
我可以启动这两个脚本。问题是,当我编辑并保存foo1.py
时,我不必重新启动解释器,我只需再次execfile
并运行我的修改,但同样的情况不会发生在{foo2.py
1}}。对于我对foo2.py
生效的编辑,我必须退出并重新启动解释器,因为即使在保存后它execfile('foo2.py')
将运行与以前相同的脚本...
这很烦人,因为我希望不断地编辑和启动多个脚本,这些脚本经常相互依赖...
我怎样才能使解释器看到我对foo2.py
的编辑,而不必重新启动它?
谢谢!
答案 0 :(得分:1)
查看reload()函数的文档以及那里提到的限制;取决于你的python版本,它位于不同的模块中,对于2.x它是预定义的。
答案 1 :(得分:1)
如果您使用的是“最近的”Python,则可以尝试以下与Python 2.6,2.7和3.x兼容的语法
with open('foo2.py') as file:
exec(compile(file.read(), 'foo2.py', 'exec'))