Wing IDE如何进行命令行调试
脚本之家
Wing IDE专业的调试探针提供了一种强大的方法来发现和解决复杂的错误。这很像Python Shell但允许用户直接参与进已经暂停的调试程序中:
通过键入在刚才发生异常的地方键入下列数值进行尝试:
news[0][0]
这将输出第一个消息条目的日期:
接下来,进行如下输入:
news[0][0] = '2004-06-15'
这是一个在进行调试时改变程序状态的方法,在测试代码进行bug修复时非常有用。现在试一试:
PrintAsText(news)
执行函数调用和打印输出到Debug Probe。注意,从命令输入Debug Probe得出结果的时候,Debug I/O工具不用于输入或输出它结果。所有Debug I/O暂时重新定向到这里。
注意,Wing IDE在用户输入的时候提供自动完成,并在Source Assistant显示调用签名和文档信息。
这是另一种可能性。复制/粘贴或拖放这段代码到Debug Probe:
def PrintAsHTML(news):
for date, event, url in news:
print('<p><i>%s</i> <a href="%s">%s</a></p>' % (date, url, event))
这实际上替换了example1.py源文件中PrintAsHTML的buggy定义,所以,用户现在可以在没有错误的情况下执行:
PrintAsHTML(news)
当修复取决于大量的程序状态,或需要在调试器中花费很多时间再生的时候十分有用:快速互动的尝试和多个编辑/调试周期bug替代
通过键入在刚才发生异常的地方键入下列数值进行尝试:
news[0][0]
这将输出第一个消息条目的日期:
接下来,进行如下输入:
news[0][0] = '2004-06-15'
这是一个在进行调试时改变程序状态的方法,在测试代码进行bug修复时非常有用。现在试一试:
PrintAsText(news)
执行函数调用和打印输出到Debug Probe。注意,从命令输入Debug Probe得出结果的时候,Debug I/O工具不用于输入或输出它结果。所有Debug I/O暂时重新定向到这里。
注意,Wing IDE在用户输入的时候提供自动完成,并在Source Assistant显示调用签名和文档信息。
这是另一种可能性。复制/粘贴或拖放这段代码到Debug Probe:
def PrintAsHTML(news):
for date, event, url in news:
print('<p><i>%s</i> <a href="%s">%s</a></p>' % (date, url, event))
这实际上替换了example1.py源文件中PrintAsHTML的buggy定义,所以,用户现在可以在没有错误的情况下执行:
PrintAsHTML(news)
当修复取决于大量的程序状态,或需要在调试器中花费很多时间再生的时候十分有用:快速互动的尝试和多个编辑/调试周期bug替代