运行 一个模块处于空闲状态 (Python 3.4),无需重新启动

Run a module in IDLE (Python 3.4) without Restart

看来,在过去,当您 运行 一个脚本(模块)时,IDLE 不会重新启动(清理环境)。然而,今天情况就是这样。但是对于原型设计,我希望环境(分配的变量、导入的模块、函数等)能够在 运行 不同的模块(文件)中存活下来。

示例:我正在开发一个函数,我们称它为 f7(),它需要特定的环境。环境是在另一个脚本(文件)中构建的,比如 env1.py。在 env1.py 变成 运行 之后,我可以在 IDLE 的命令行工作时构建所有导入的模块、定义的函数和分配的变量。但是我不能 运行 我的 f7() 所在的另一个文件!我将不得不在解释器的命令行重新定义 f7() 。我当然不会这样做,因为 f7() 非常冗长。唯一剩下的就是在 env1.py 中包含 f7()。每次更改 f7() 后重新启动它。结果,我每次都必须等到 env1.py 完成。这是浪费时间,因为每次 运行s,它都做同样的事情。我只更改 f7()...

每次我在 IDLE 中 运行 一个模块(文件)时,我可以告诉 IDLE 不要重新启动(干净的环境)吗?如果不是,那么 IDLE 的哪些替代方案能够做到这样的事情? IDLE 似乎在 Windows、Ubuntu、Raspbian 上表现相同。我在每个系统上都使用 Python 3.X。

我不知道在 运行编辑器文件时 IDLE 从来没有重新启动过,所以那应该是几年前的事了。不过,我会将其视为一项新功能。

编辑:2019 年 6 月添加:在编辑器 运行 菜单上,运行... 自定义打开带有 [X] 重启的对话框。取消选中该框并跳过重新启动。 结束编辑

同时,您可以针对您提供的特定场景执行此操作。将 env1.py 加载到编辑器 window 和 运行 中。当 >>> 出现时,输入或粘贴 f7 和 运行 的 def 语句。 (使用 f7 加载文件后粘贴并复制。)通过调用 f7 进行测试。要编辑 f7 的定义,请将其调回当前 >>> 行。单击上一个定义并点击 Enter 或使用历史键盘快捷键(对我来说 Windows,Alt-P 代表上一个,Alt-N 代表下一个)。在任何一种情况下,编辑 re-run。对测试语句做同样的事情。我经常回忆和编辑语句。