这是初步认识PyCharm的第二篇教程——调试您的第一个Python应用程序。
Jetbrains!
(注:Pycharm为jetbrains旗下Python开发工具)
PyCharm最新版本下载
第2步:调试您的第一个Python应用程序
找出问题的根源

PyCharm 告运行时错误:a ZeroDivisionError。深入研究一下代码,找出问题所在。这里可以使用PyCharm调试器来查看代码中发生了什么。要开始调试,您必须先设置一些断点。要创建断点,只需单击左侧gutter:

接下来,单击左侧gutter中的播放图标,在main旁边,然后选择Debug ‘Car’。 PyCharm启动调试会话并显示调试工具窗口。

在Console选项中,输入S:

如您所见,断点标记变为蓝色。这意味着已经达到了断点; 请注意,此时尚未执行突出显示的代码行。
单击播放图标以恢复脚本执行。现在另一个断点也出现了:默认情况下,PyCharm将停止代码中未捕获的任何异常,并且它将显示带闪电的断点图标。

控制台还会显示错误消息。您还可以在调试器中看到该值self.time等于零:

Surrounding code
为避免再次遇到同样的问题,现在添加一个if语句来检查时间是否等于零。为此,在方法average_speed中选择语句return self.odometer / self.time,然后按Ctrl + Alt + T(Code | Surround with):


详细调试
“调试”工具窗口显示框架, 变量和监视的专用窗格以及控制台,其中显示所有输入和输出信息。如果希望控制台始终可见,可以将其拖动到PyCharm窗口的一个边缘。
Stepping
如果您希望逐行查看代码的作用,则无需在每一行上设置断点,您可以单步执行代码。看一下示例程序是什么样子:单击播放图标,转到控制台询问汽车的平均速度(类型’S’),可以看到达到断点。这时可以使用Stepping工具栏按钮选择想要在下一行停止的行。

例如,单击Step Over 按钮并看到蓝色标记移动到下一行代码:

如果单击Step Into按钮,您将看到action = input(“What should I do[A]ccelerate, [B]rake, ” “show [O]dometer, or show average [S]peed).upper() 调试器进入文件parse.py:

但是,如果继续使用Step Over 按钮,您将看到您的应用程序只是传递到下一个循环:

如果您想专注于自己的代码,请使用Step Into My Code按钮 – 这样您就可以避免进入库类。
Watching
PyCharm允许您观察任何变量。只需要单击Watches选项的工具栏中的+,然后输入你想要观看的变量的名称-将其设置为 my_car.time。请注意,此处可以使用代码完成:

首先,您看到时间等于nil – 这意味着该变量尚未定义:

但是,当程序执行继续到定义变量的作用域时,监视器将获得以下视图:

内联调试

默认情况下启用此内联调试功能。如果您没有看到内联调试值,请使用调试工具窗口中的设置图标检查它是否已启用::

评估表达式
最后,您可以随时评估任何表达式。

实际上,你可以用watch看到同样的东西。使用评估表达式,您可以执行使用watch无法执行的操作:您可以更改内容。例如,如果输入所需的里程表值50,然后继续单步执行脚本,您将获得以下信息:

概要
- 找出问题的根源
- 设置断点
- 逐步完成您的计划
- 创建一个 watch
- 评估一个表达
标签:PythonIDE
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!