[英]How do you debug without an interactive console
作为一名自学成才的程序员,我学会了使用交互式控制台进行调试,该控制台在构建/运行脚本时将所有变量保存在内存中。 但是,我注意到在IDE中进行调试的压倒性趋势(为此,我认为CLI +编辑器解决方案)是在一个地方构建脚本并提供单独的控制台“沙盒”类型区域,该区域仅在复制时保留变量/粘贴您的代码。
在没有交互式控制台的情况下如何调试? 谁能列出一些调试步骤来帮助我成为更好的程序员/调试器?
目前,这是我所做工作的非常简化的版本:
最好的方法是编写测试 。 这样可以自动执行第3步到第7步。 它还可以防止在更改其他代码时发生回归。
您可以轻松地使用q
模块https://pypi.python.org/pypi/q
xyxy.py
import q
do_something()
q.d() #this will open interactive shell
def f():
do_something()
q.d() #open console here with access to all local variables of f
您还可以使用自动测试(内置的unittest模块或鼻子测试或其他工具)
使用一个不错的python IDE-那里有很多东西,您将可以通过在鼠标悬停或添加监视来在断点处停止检查变量,并进入一个上下文控制台,在该控制台中您可以在断点的上下文中与代码进行交互。
在问题代码区域之间使用打印语句...否则,只需下载一个好的IDE
事实证明,PyCharm至少有一个交互式控制台,并且默认的键盘映射(在Mac上是)是option-shift-E。 然后将变量加载到内存中。 但是,以上建议是更好的编程实践。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.