我目前正在使用Python调试代码。我有一段时间没有使用过Python。我在变量上放了一些断点,这是一个整数。我们假设这个变量是X = 10
。我怎么能:
X+2
并得到结果?答案 0 :(得分:3)
如评论中所述,Python中有许多possible IDEs you can use。最初的问题是关于Eclipse的,所以我的答案主要集中在使用该IDE的解决方案上。如果您喜欢不同的环境,可以采用其他解决方案......
首先,你需要弄清楚你用于eclipse的插件。您可以在python wiki上看到一些选项。它看起来像PyDev is more popular,但您可以选择其他人。
假设您使用PyDev,您可以使用here所述的监视工具来评估任何表达式。或者,您可以使用console debugger直接在调试器中评估代码。
编辑:根据评论,您还可以使用Window > Show View > Other > Debug > Expressions
打开“表达式”窗口。这与用于监视设施的窗口相同,内容可以直接编辑。
答案 1 :(得分:1)
我确信每个人都有自己的看法,但我发现Eclipse的python工具非常复杂。如果您没有使用Eclipse IDE,请尝试PyCharm。它拥有非常好的工具,可以完全按照您的要求进行操作,还有很多教程视频。该视频向您展示了如何完全按照您的要求执行操作:https://www.youtube.com/watch?v=QJtWxm12Eo0
答案 2 :(得分:1)
我不认为你可以纯粹在Eclipse中完成这项工作,而不是没有广泛的插件。但是,有一些非常好的python调试工具。
如果您愿意亲自动手,内置的python调试器pdb可以完成您想要的所有操作。导入pdb
,pdb.set_trace()
您要打破的位置,如果您之前使用过gdb
,则可以进入一个非常熟悉的交互式调试器。
如果您想使用更专注于IDE的内容,我建议使用Immunity Debugger。它非常好,并且有很多文档。这可能比你正在寻找的更多。
答案 3 :(得分:0)
尝试开源,免费VS Code(使用Python插件)。它具有光滑的智能感知功能,您可以观察,检查变量,调试它们。编辑器基于node.js,可以在每个平台上运行。对于python开发恕我直言,Eclipse是过度的。
答案 4 :(得分:0)
ipdb
是python调试的一个方便工具:
ipdb导出函数以访问IPython调试器,该调试器具有选项卡完成,语法突出显示,更好的回溯,使用与pdb模块相同的接口更好的内省。
要安装ipdb,只需在shell中运行pip install ipdb --user
。
要设置断点,请在要跳转到调试器的行之前添加import ipdb; ipdb.set_trace()
。 E.g:
import ipdb; ipdb.set_trace()
X=10
运行程序python myfunc.py
后,将触发类似IPython的交互式shell,您可以在其中运行python命令。 E.g:
ipdb> p X
10
ipdb> X+2
12
这是一个简单的教程:An Introduction to Python Debugging