Python解释器与脚本的关系

2024-04-20 05:34:33 发布

您现在位置:Python中文网/ 问答频道 /正文

在我当前的目录中,我有一个foo1.py脚本和一个名为other的目录,其中有一个foo2.py脚本

现在:

我启动解释器,并使用execfile启动这两个脚本。问题是,当我编辑并保存foo1.py时,我不必重新启动解释器,我只需再次execfile,它会随着我的修改而运行,但是foo2.py不会发生同样的情况。为了使我对foo2.py所做的编辑生效,我必须退出并重新启动解释器,因为即使在保存它之后execfile('foo2.py')仍将运行与以前相同的脚本

这是恼人的,因为我想不断地编辑和推出多个脚本,他们往往相互依赖

我怎样才能让解释器看到我对foo2.py的编辑,而不必重新启动它

谢谢


Tags: py目录脚本编辑情况解释器otherexecfile
2条回答

如果您使用的是“最近使用的”Python,那么可以尝试以下与python2.6、2.7和3.x兼容的语法

with open('foo2.py') as file:
    exec(compile(file.read(), 'foo2.py', 'exec'))

看一下reload()函数的文档和这里提到的限制;根据您的python版本,它位于不同的模块中,对于2.x,它是预定义的

相关问题 更多 >