我的 Python IDE 使用 PyCharm(社区版本)。我希望程序以逐行的方式进行调试。所以我不想将每一行设置为断点...有没有办法可以做到这一点?
正如 @Cyber 提到的,一旦遇到断点并停在某处,调试热键将让您逐行单步执行,逐步进入函数调用等。
如果您确实想单步执行每一行,您可以在代码的最开头的某个位置设置一个断点。如果您在代码中使用 main() 函数,例如:
def main():
....
if __name__ == '__main__':
main() # Breakpoint here, 'Step Inside' to go to next line
然后您可以在调用时设置断点到
main()
。 (如果你不是,你可能想尝试这种方法。)
我要指出的另一件事是 PyCharm 易于忽视的“条件断点”功能。如果右键单击编辑器装订线区域中的断点符号,则可以输入条件,例如 n > 10
;仅当执行该行并且满足条件时才会触发断点。例如,当您尝试调试递归函数中的代码问题时,这可以大大简化事情。
我知道最后一部分并不是您真正想要的,但是随着您的代码库变得越来越大,浏览每一行可能会非常耗时。您可能希望更多地关注大型项目的单元测试和日志记录等事情。
Shift + F9
)。
跨过去 -
F8
走进 -
F7
走出去 -
Shift+F8
。
步进到下一个断点(或结束) -
F9