Python解释器与脚本的关系

标签 python scripting execfile

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

现在:

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

这很烦人,因为我想不断地连续编辑和启动多个脚本,这些脚本通常相互依赖......

如何才能让解释器看到我对 foo2.py 的编辑,而无需重新启动它?

谢谢!

最佳答案

查看 reload() 函数的文档以及其中提到的限制;根据您的 python 版本,它位于不同的模块中,对于 2.x,它是预定义的。

关于Python解释器与脚本的关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23359141/

相关文章:

python - 通过使用 python 和 pandas 使用 2 个现有列的函数填充新列

python - 在 PyQt5 中创建复杂的自定义小部件并将其添加到 QGridlayout

mysql - 用于在 MySQL 中插入值的 Bash 脚本

Ruby 脚本 - Telnet 在登录期间挂起

python - 调用多个其他脚本的脚本由于未定义的函数而出错

Python : Why do we need a build tool, 你对 CI 有什么建议?

python - 重新编译 Python 是否需要重新安装所有附加模块,例如 numpy、scipy?

sql - 您将常用的 sql 任务脚本保存在哪里?

python - 如何在 Python 中执行代码字符串?

python:函数*有时*维护对其模块的引用