调试PyDev+Eclipse - 在断点/暂停模式下代码更改后不重载

5 投票
1 回答
901 浏览
提问于 2025-04-17 06:49

我经常进行以下步骤,并想要提高调试的速度:

  1. 我会设置一些断点。
  2. 我在运行Google Appengine应用程序(Python 2.5.2+)。
  3. 当程序在断点停下时,我常常会修改代码来修复错误。
  4. 修改完代码后想要重新测试,但如果我在断点或暂停状态下修改了代码,程序不会更新我的代码修改,这就需要慢慢重新加载。

有没有人知道在暂停后强制重新加载的根本原因是什么,或者这是PyDev的一个错误/限制吗?

1 个回答

5

调试的方式并不是逐行执行你的源代码调试其实是把你的源代码“编译”成字节码(.pyc文件),然后执行这些字节码,而不是直接执行你的源代码

调试工具只是记录了哪些字节码(.pyc文件)对应你源代码(.py文件)中的哪一行,并把这些信息展示给你,方便你查看,但它运行程序时并不是用的源代码(.py文件)。

所以,如果你修改了源代码(.py文件),想让调试工具识别这些变化,你需要先“重新编译”一下.pyc文件。

希望这对你有帮助!

撰写回答