执行函数体忽略某些没有注释的行(Python)?

时间:2015-09-16 09:17:22

标签: python function debugging wing-ide

我在一个Python文件中编写了几个函数。它们对基于文件的数据集执行一系列步骤。 我的工作流程:

  • 在我完成函数体的一部分编码之后,我运行该函数来查看它是如何进行的。
  • 可能会在某个时刻中断。
  • 我修复了代码并重新运行了该函数。

问题是,当我重新运行该函数时,它将执行已经成功完成的行。然而,我希望能够从一开始就开始,而不是从一个任意点开始。这是因为整个功能运行了几分钟,等待它完成将是浪费时间。

我可以实施"检查"查看是否需要此操作(例如,如果文件已存在则不创建文件),但这意味着添加了许多新的验证代码(例如,确保现有文件确实包含所需的内容) ;实际上,我的函数将以已知格式运行在数据集上,并且应该执行整个函数。

最明显的解决方案是注释掉已经成功执行的部分,但这是一个喧嚣,我厌倦了评论和取消注释部分,因为我向前移动并且功能变得更大。

在执行时是否有更好的方法而不是忽略行忽略功能部分的某些部分?

如果这与IDE本身的调试技巧有关,我在Wing IDE上。

1 个答案:

答案 0 :(得分:1)

Wing可以通过右键单击弹出菜单将程序计数器移动到函数中的不同行,但是每次运行该函数时都需要执行此操作。我认为更好的方法是将函数重构为更小的函数 - 然后您可以注释掉或仅条件化函数调用。您也可以编写调用某些函数而不是其他函数的测试。