草庐IT

DEBUGGING

全部标签

python - 为什么 pdb 不能访问包含异常的变量?

有时,我无法确定是什么时候或什么原因导致的,pdb不会帮助您编写如下代码:try:foo()exceptExceptionase:importpdb;pdb.set_trace()您最终会得到通常的提示,但尝试访问e将导致:(pdb)e***NameError:name'e'isnotdefined.当然不是所有时候都这样,在linux、windows、我的机器、我同事的机器上... 最佳答案 在Python3中,except..astarget语句的目标在套件退出时被清除。来自trystatementdocumentation:W

python - R 的 browser() 在 Python 中等效

标题说明了一切。当您使用R并使用RStudio时,通过在代码中的任何位置放置browser()调用来调试某些东西真的很容易和简单,并且看看出了什么问题。有没有办法用Python做到这一点?我正在慢慢厌倦打印语句调试。 最佳答案 看起来你在找ipdb基本用法是设置:importipdbipdb.set_trace()在你的代码中探索;这会将您直接带到该部分代码,因此您可以探索此时的所有变量。对于您的特定用例:“它是否是我的控制台中的一个设置,以便它在崩溃之前立即打开pdb”(对另一个答案的评论),您可以使用上下文管理器:launch_

python - 调试器在 "Collecting data..."处超时

我正在使用PyCharm调试Python(3.5)程序(PyCharmCommunityEdition2016.2.2;Build#PC-162.1812.1,构建于2016年8月16日;JRE:1.8.0_76-release-b216x86;JVM:JetBrainss.r.o的OpenJDK服务器VM)在Windows10上。问题:当在某些断点处停止时,调试器窗口停留在“收集数据”,最终超时。(无法显示帧变量)要显示的数据既不特殊,也不是特别大。PyCharm可以以某种方式使用它,因为上述数据的某些值的条件断点工作正常(程序中断)——看起来收集它仅用于显示(而不是操作目的)的过程

python - 在 Pydev 中调试时查看调用堆栈

有没有办法在Pydev中调试python时查看调用堆栈? 最佳答案 这是“调试”透视图的“调试”View:你可以看到我在failUnlessEqual方法中,由test_01a调用,由new_method调用... 关于python-在Pydev中调试时查看调用堆栈,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8572680/

在 macOS High Sierra 上找不到 Python 调试器 pdb

PythonDebuggingTools文档说Python调试器pdb是“所有Python安装的一部分”,但我在macOSHighSierra下找不到它:pdb:commandnotfound现在它应该作为macOS的正常部分安装吗? 最佳答案 没有名为pdb的命令,但您可以从shell调用pdb:python-mpdbyour_script.py您可以在itsdoc中阅读更多调用pdb的方法. 关于在macOSHighSierra上找不到Python调试器pdb,我们在StackOve

python - 发布 JSON 和 python Flask - 使用 Werkzeug 调试器的任何技术?

好的,我在我的项目中使用RESTful后端,并通过jquery提交数据。我必须说werkzeug调试器非常适合调试,特别是当你像我一样是一个糟糕的python程序员时。您故意在要调查的地方抛出异常,并使用调试器呈现的html检查代码和变量。但是,当您发送post请求而不是get请求时,如果您在后端代码中抛出异常,浏览器当然不会呈现响应文本。考虑到它有javascript和一切,有什么技术可以用来呈现响应文本吗?我正在尝试不同的方法,例如尝试将响应文本注入(inject)弹出窗口,例如:$.postJSON=function(url,data,callback,error_callbac

python - 在 python 的 concurrent.futures 中查找 BrokenProcessPool 的原因

一言以蔽之当使用concurrent.futures并行化我的代码时,我得到了一个BrokenProcessPool异常。不会显示更多错误。我想找到错误的原因并询问如何做到这一点的想法。完整问题我正在使用concurrent.futures并行化一些代码。withProcessPoolExecutor()aspool:mapObj=pool.map(myMethod,args)我以(且仅以)以下异常结束:concurrent.futures.process.BrokenProcessPool:Achildprocessterminatedabruptly,theprocesspooli

python - 如何调试使 python 崩溃的 python 脚本

我正在尝试帮助调试导致python(2.7)本身崩溃的python脚本。该脚本将一些信息记录到文件中,并且每次运行都在不同的停止点结束,或者至少它写出的内容在不同的位置。脚本已经有一个try\catch。该脚本之前运行无误这是在Window2008服务器上运行的,具有相当多的RAM,并且运行时CPU使用率不高。所以我的问题是:是否有可以提供帮助的工具或技术?我看到有一个可以导入的pdb模块,但不确定这是否有助于解决这个问题。当py脚本使python本身崩溃时,您将如何调试它?国标 最佳答案 所以日志中没有异常?它只是在不同的地方随机

python - 在 pdb 中保存命令历史记录

有没有办法跨session保存pdb(python调试器)命令历史记录?另外,我可以指定历史长度吗?这类似于问题HowcanImakegdbsavethecommandhistory?,但是对于pdb而不是gdb。-非常感谢 最佳答案 参见this邮政。可以在pdb中保存历史记录。默认情况下,pdb不会读取多行。所以所有的功能都需要在一行上。在~/.pdbrc中:importatexitimportosimportreadlinehistoryPath=os.path.expanduser("~/.pyhistory")defsav

python - 使用 python 远程编码和执行 : what IDE?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭7个月前。Improvethisquestion过去六个月我一直在用Python开发一个项目,我喜欢这门语言。但是我还没有找到可以为我提供一些额外功能的IDE或文本编辑器。我目前有语法高亮,这是最容易获得的东西之一,但仅此而已。我梦想让我的IDE跳转到我的代码中导致崩溃的行,而不是从回溯中读取行号并在我的文本编辑器中手动定位它。我一直在寻找可以在我的开发限制下做到这一点的东西,但没有成功。我的约束如下:正在开发的