当前位置:网站首页>PyCharm常用功能 - 断点调试
PyCharm常用功能 - 断点调试
2022-06-27 17:57:00 【我是胖虎啊】
PyCharm - 断点调试
以前写Python程序时, 因为不会断点调试, 所以调试就一直用 print(变量) * N次, debug效率非常低, 经常1个问题得查半天...
后来学了一下Pycharm的断点调试, 发现功能真的很强大, debug的效率提升很多! 所以写篇文章分享下这个技能, 希望大家不再为调试而发愁!
先发下调试代码
import requests
fruit = 'watermelon'
def debug_a():
global fruit
a = 0
for i in range(100):
a += 1
fruit = 'Strawberry'
def debug_b():
c = 20
d = 30
e = 40
debug_a()
debug_c()
print(fruit)
url = "http://httpbin.org/user-agent"
res = requests.get(url)
print(res.json())
b = 0
for j in range(100):
b += 1
def debug_c():
global fruit
fruit = 'lemon'
if __name__ == '__main__':
debug_b()01
开启调试
当前一共4个断点,.打断点的位置, 见图
设置断点后,点击如图所示的按钮,即可进入调试模式
02
工具栏区
左侧工具栏
上方工具栏
03
基础调试
首先是 变量区介绍
可以先连续点击图中的按钮(快捷键F8), 观察一下variables区域中变量的数据变化情况
连续点击F8, 可以发现 fruit 变量会在运行完debug_c方法后发生变化, c, d, e 变量没变化.
而且, 变量的数据会在每行的后面,使用灰字显示在后面,查看非常方便.这样就完成了初步调试的使用, 是不是很简单!
特别提示: 蓝色条标注的行,例如图中的 debug_a,代表是当前还未运行此行代码, 并即将运行!
04
进阶调试
现在重新调试, 不过不用F8了, 现在按A按钮调试. 运行过程中, 可以发现会进入到debug_a方法内部,此时可以按 C按钮跳出来.同理, 后续也会进入到 debug_c 和 requests 中的内部代码.
再次重新调试, 此时一直按B按钮, 可以发现这次只会进入到 debug_a 和 debug_c方法内部,而不会进入到requests中的内部. 这就是 A按钮 和 B 按钮的区别: 调试过程中, 是否只进入自己定义的方法内部!
现在说下watch区的使用, 首先是打开watch区的按钮, 如图
watch区的界面, 如图所示
watch区的作用: 当 variables 区有很多变量时, 此时可挑选关注的变量到 watch 区
以上就是Pycharm常用的调试技巧,你学会了嘛?
边栏推荐
- 基于STM32F103ZET6库函数跑马灯实验
- GIS遥感R语言学习看这里
- Gartner聚焦中国低代码发展 UniPro如何践行“差异化”
- 惊呆!原来 markdown 的画图功能如此强大!
- Embracing cloud Nativity: Practice of Jiangsu Mobile order center
- 数组练习 后续补充
- What is ICMP? What is the relationship between Ping and ICMP?
- The IPO of Yuchen Airlines was terminated: Guozheng was proposed to raise 500million yuan as the major shareholder
- Oracle 获取月初、月末时间,获取上一月月初、月末时间
- DCC888 :Register Allocation
猜你喜欢

Oracle 获取月初、月末时间,获取上一月月初、月末时间

新中大冲刺科创板:年营收2.84亿 拟募资5.57亿

【登录界面】

基于STM32F103ZET6库函数蜂鸣器实验

MySQL表的增删改查(基础)

Bit.Store:熊市漫漫,稳定Staking产品或成主旋律

Online text batch inversion by line tool

Minmei new energy rushes to Shenzhen Stock Exchange: the annual accounts receivable exceeds 600million and the proposed fund-raising is 450million

Redis 原理 - String

Embracing cloud Nativity: Practice of Jiangsu Mobile order center
随机推荐
PCB线路板蛇形布线要注意哪些问题?
Vs code runs "yarn run dev" and reports "yarn": the file XXX cannot be loaded
如何封裝調用一個庫
Hanoi塔问题
中金证券经理给的开户二维码安全吗?找谁可以开户啊?
Where to look at high-yield bank financial products?
带你认识图数据库性能和场景测试利器LDBC SNB
On thread safety
RANSAC的代码和原理
Market status and development prospect forecast of the global infusion needle less connector industry in 2022
mime.type文件内容
Tupu digital twin intelligent energy integrated management and control platform
基于STM32F103ZET6库函数蜂鸣器实验
OpenSSL client programming: SSL session failure caused by an obscure function
SQL Server - Window Function - 解决连续N条记录过滤问题
新中大冲刺科创板:年营收2.84亿 拟募资5.57亿
Determine whether a variable is an array or an object?
Blink SQL内置函数大全
循环遍历及函数基础知识
教你打印自己的日志 -- 如何自定义 log4j2 各组件