猪行天下之Python基础——1.3 Python开发IDE之PyCharm(中)

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 内容简述: 1、为什么要使用IDE? 2、PyCharm的下载安装 3、PyCharm的基本使用 4、PyCharm程序调试 5、共用全局的Python解释器

⑤ 错误定位


我们并不能保证我们的程序一定是正确的,有时可能会因为一些问题导致程序 运行停止,那就 需要我们定位到错误位置了,比如我们把print(a)改成print(a/0), 故意引发除0错误。执行结果如下:


F:\Project\Python\Test\venv\Scripts\python.exe F:/Project/
Traceback( most recent call last):
File "F:/Project/Python/Test/test.py",line 2, in <module>
print(a/0)
ZeroDivisionError:division by zero


点击test.py即可定位到错误位置,为第2行,然后进行修改即可。当然,只是这种显而易见的错误能够直接定位到,更复杂的错误就需要通过程序调试来定位了。  


4、PyCharm程序调试


一般的程序调试流程:「下断点」,「单步调试」,「值跟踪


① 下断点


程序执行到断点所在的代码时,会暂停应用程序的运行线程被挂起,然后可以通过调试器进行跟踪


下断点的方式也很简单,点击某行代码的左侧,会出现如图所示的小红点。



这个小红点就是断点,在PyCharm中,有着各种类型的断点:


1. 行断点


对「特定行进行调试」时用到,点击行所在的左侧边栏即可设置。 右键点击这个断点,会弹出如下所示的设置对话框:



如果你取消了Enabled勾选,断点就处于如图所示的禁用状态:



2. 方法断点


把断点下到一个「方法」名前,一般用于检测方法的「输入参数」与「返回值」。比如:



3. 变量断点


有时我们对程序运行过程并不关心,而只「关注某个变量的变化」,可以在变量定义前加一个断点。比如:



在程序运行过程中,如果该变量的值发生改变,程序会自动停下来,并定位到变量值改变的地方,供开发者调试。


4.条件断点(断点设置Condition)


有时会有这样的场景:把断点打到循环体的中,我们只关心特定循环次数下的运行情况。 比如一个循环10次的循环体,我们想知道循环到第8次时的运行情况,如果你不知道条件断点的话,你需要一直按「Run to Cursor」直到满足我们的条件。比如下面的代码:



使用条件断点的话,邮件断点,输入如下所示的「等式条件」:



然后可以发现,程序直接跳到i=8的时候才挂起,非常方便。



5.日志断点


调试的时候我们可以通过打印日志的方式来定位异常代码大概位置,以缩小引发问题的范围,然后再使用断点精确定位问题。如果是普通的打印日志,我们需要等待重新构建程序,如果用「日志断点」就避免这个无意义的等待。使用日志断点非常简单,右键断点,去掉「Suspend」的勾选,会出现如下所示的弹窗,勾选「Evaluate and log」在此输入想输出的内容。



运行调试后,当执行到日志断点的时候可以看到控制台输出了对应的日志信息,而且程序正常运行,并不会挂起。



如果想查看更详细的信息,比如断点的位置和触发时的堆栈信息,可以勾选「"Breakpint hit" message」和「Stacktrace」,勾选后输出内容会变得更详细。


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
9天前
|
IDE 开发工具 Android开发
【Python编程入门】面对IDE编译错误:如何解读系统提示并解决问题
本文通过一个Python编码错误的实例,讲述了如何根据系统提示解读并解决IDE编译中出现的问题,强调了直接查阅官方文档的重要性,而不是盲目依赖百度搜索来解决问题。
48 2
【Python编程入门】面对IDE编译错误:如何解读系统提示并解决问题
|
2月前
|
IDE 开发工具 iOS开发
Python的IDE选择
【7月更文挑战第4天】Python的IDE选择
129 59
|
2月前
|
数据库 Python Windows
Python:Pycharm安装指南
1. 双击安装程序,点击Next。 2. 选择安装路径,Next。 3. 默认选项,添加环境变量,Next。 4. 保持默认设置,点击Install。 5. 安装完成后选择是否立即重启。
38 2
Python:Pycharm安装指南
|
2月前
|
JSON 数据格式 Python
Flask实现内部接口----pycharm安装及新建,location代表着文件路径,下面是Python的环境,Flask是由Python开发的框架,Python文件接口ython通过GET发送
Flask实现内部接口----pycharm安装及新建,location代表着文件路径,下面是Python的环境,Flask是由Python开发的框架,Python文件接口ython通过GET发送
|
2月前
|
iOS开发 MacOS Python
【Python】已解决:(Pycharm切换Python版本后报错)No Python at “C:\Program Files\Python39\python.exe”
【Python】已解决:(Pycharm切换Python版本后报错)No Python at “C:\Program Files\Python39\python.exe”
49 0
【Python】已解决:(Pycharm切换Python版本后报错)No Python at “C:\Program Files\Python39\python.exe”
|
3月前
python+Pycharm+selenium操作浏览器(Chorme或Edge)
python+Pycharm+selenium操作浏览器(Chorme或Edge)
75 1
|
3月前
|
Python
pycharm配置本地python
pycharm配置本地python
143 1
|
3月前
|
Python
Pycharm为Python项目配置环境不生效,解决办法
在PyCharm中,项目依赖配置更改后未生效。解决步骤包括:1) 查找`C:\Users\username\AppData\Roaming\JetBrains\PyCharm2022.2\options\jdk.table.xml`,2) 删除`&lt;jdk&gt;&lt;/jdk&gt;`标签内的旧配置内容,然后重启PyCharm以应用新目录。
119 0
Pycharm为Python项目配置环境不生效,解决办法
|
3月前
|
IDE Java 开发工具
|
2月前
|
IDE 开发工具 Python
【Python】已解决:pip安装第三方模块(库)与PyCharm中不同步的问题(PyCharm添加本地python解释器)
【Python】已解决:pip安装第三方模块(库)与PyCharm中不同步的问题(PyCharm添加本地python解释器)
121 0
下一篇
云函数