在Java/ c#中,您可以很容易地逐级检查代码以跟踪可能出错的地方,而IDE使这个过程对用户非常友好。
你能以类似的方式跟踪python代码吗?
在Java/ c#中,您可以很容易地逐级检查代码以跟踪可能出错的地方,而IDE使这个过程对用户非常友好。
你能以类似的方式跟踪python代码吗?
当前回答
Python导师是一个为新手设计的在线单步调试器。您可以在编辑页面上输入代码,然后单击“可视化执行”开始运行。
除其他外,它支持:
隐藏变量,例如,隐藏一个名为x的变量,把这个放在最后: # pythontutor_hide: x 保存/共享 其他一些语言,如Java, JS, Ruby, C, c++
然而,它也不支持很多东西,例如:
读取/写入文件-使用io。StringIO和io。取而代之的是BytesIO: demo 代码太大,运行时间太长,或者定义了太多的变量或对象 命令行参数 很多标准库模块,如argparse, csv, enum, html, os, sys, weakref… Python 3.7 +
其他回答
VSCode
如果你想使用IDE,这是PyCharm的一个很好的替代方案。
安装VSCode 安装Python扩展,如果还没有安装的话 用Python代码创建一个文件mymodule.py 若要设置断点,请将鼠标悬停在行号上并单击红点,或按F9 按F5开始调试并选择Python文件
它将在断点处停止,你可以做你通常的调试工作,比如检查变量的值,可以在变量选项卡(通常在左边)或单击调试控制台(通常在终端旁边的底部):
这个截图显示了VSCodium。
更多的信息
在VS Code中的Python调试 在VS Code中开始学习Python 在Visual Studio代码中调试
在python中有一个叫做'pdb'的模块。在python脚本的顶部
import pdb
pdb.set_trace()
然后进入调试模式。您可以使用's'步进,'n'跟随下一行,类似于使用'gdb'调试器。
PyCharm是一个包含调试器的Python IDE。观看这段YouTube视频,了解如何使用它来逐步执行代码:
PyCharm教程-使用PyCharm调试python代码(在6:34开始调试)
注意:PyCharm是一个商业产品,但该公司确实为学生和教师提供了免费的许可证,以及一个“轻量级”社区版本,它是免费和开源的。
从Python 3.7开始,你可以使用breakpoint()内置函数进入调试器:
foo()
breakpoint() # drop into the debugger at this point
bar()
默认情况下,breakpoint()将导入pdb并调用pdb.set_trace()。但是,你可以通过sys.breakpointhook()和使用环境变量PYTHONBREAKPOINT来控制调试行为。
有关更多信息,请参阅PEP 553。
Python导师是一个为新手设计的在线单步调试器。您可以在编辑页面上输入代码,然后单击“可视化执行”开始运行。
除其他外,它支持:
隐藏变量,例如,隐藏一个名为x的变量,把这个放在最后: # pythontutor_hide: x 保存/共享 其他一些语言,如Java, JS, Ruby, C, c++
然而,它也不支持很多东西,例如:
读取/写入文件-使用io。StringIO和io。取而代之的是BytesIO: demo 代码太大,运行时间太长,或者定义了太多的变量或对象 命令行参数 很多标准库模块,如argparse, csv, enum, html, os, sys, weakref… Python 3.7 +