pycharm Debug调试

debug 一般有三种方式:

  1. print()
  2. IDE 的debug工具
  3. pad命令 

一般来说IDE 的debug工具就完全可以完成你需要的功能,但是在面对多进程/线程的时候,就会一直“connected”,这时候你要不就是修改进程数(Pycharm在Debug的时候一直“Connected”而没有下一步动作_HealthScience的博客-CSDN博客),要不就是使用pdb进行调试代码

1、IDE 的debug工具

竖栏 

 横栏

Evalute Expression(Alt + F8)

这个功能很好用,直接输入变量和你想要执行的操作就可以直接返回给你值,方便调试

另外:debug调试时使用参数

把参数全部输入进入就可以了

 

你此时可能会发现:pycharm在 terminal可以但是用右上角运行时 No such file or directory:

这里只需要使用绝对路径就可以了

新手必会,pycharm的调试功能(史上最详篇) - 知乎新手必会,pycharm的调试功能(史上最详篇)前言Debug调试,是一项学习编程人员的重要技能。只有当你学会 debug 了以后,才可以正确的知道程序的走向流程是如何的,今天就来给大家介绍一下 pycharm 中的 debug 功能…icon-default.png?t=N7T8https://zhuanlan.zhihu.com/p/62610785

2、pdb命令 

只需要在你需要debug的地方的下一行输入“pdb.set_trace()”即可,然后正常运行Python命令就行了,运行以后你直接输入你要查看的变量名就行了,并且你也可以使用函数,例如c.shape这种操作,

示例:

import pdb
 
def add1(a, b):
    pdb.set_trace()
    c = int(a) + int(b)
    return "sum : {}".format(c)
 
print(add1(3, 5))

其他命令操作:

1 进入命令行Debug模式,python -m pdb xxx.py
2 h: (help)帮助
3 w: (where)打印当前执行堆栈
4 d: (down)执行跳转到在当前堆栈的深一层(个人没觉得有什么用处)
5 u: (up)执行跳转到当前堆栈的上一层
6 b: (break)添加断点
        b 列出当前所有断点,和断点执行到统计次数
        b line_no:当前脚本的line_no行添加断点
        b filename:line_no:脚本filename的line_no行添加断点
        b function:在函数function的第一条可执行语句处添加断点
7 tbreak: (temporary break)临时断点
在第一次执行到这个断点之后,就自动删除这个断点,用法和b一样
8 cl: (clear)清除断点
        cl 清除所有断点
        cl bpnumber1 bpnumber2... 
                清除断点号为bpnumber1,bpnumber2...的断点
        cl lineno 清除当前脚本lineno行的断点
        cl filename:line_no 清除脚本filename的line_no行的断点
9 disable:停用断点,参数为bpnumber,和cl的区别是,
        断点依然存在,只是不启用
10 enable:激活断点,参数为bpnumber
11 s: (step)执行下一条命令,如果本句是函数调用,
        则s会执行到函数的第一句
12 n: (next)执行下一条语句,如果本句是函数调用,
        则执行函数,接着执行当前执行语句的下一条。
13 r: (return)执行当前运行函数到结束
14 c: (continue)继续执行,直到遇到下一条断点
15 l: (list)列出源码
        l 列出当前执行语句周围11条代码
        l first 列出first行周围11条代码
        l first second 列出first--second范围的代码,
        如果second<first,second将被解析为行数
16 a: (args)列出当前执行函数的函数
17 p expression:(print)输出expression的值
18 pp expression:好看一点的p expression
19 run:重新启动debug,相当于restart
20 q:(quit)退出debug
21 j lineno:(jump)设置下条执行的语句函数
只能在堆栈的最底层跳转,向后重新执行,向前可直接执行到行号
22)unt:(until)执行到下一行(跳出循环),或者当前堆栈结束
23)condition bpnumber conditon,给断点设置条件,
当参数condition返回True的时候bpnumber断点有效,否则bpnumber断点无效

3、ipdb 

这种听起来不错,有时间看一下

回答: Pycharm Debug是一种强大的调试工具,可以帮助Python开发人员快速定位和修复代码中的错误。通过在代码中设置断点并控制程序的执行,使用者可以逐行查看程序的运行状态、变量值以及函数调用等信息,从而更好地理解代码的执行过程。在Pycharm中,可以通过以下几个步骤来使用Debug功能: 1. 在代码中设置断点:在您想要暂停执行的位置单击行号区域,或者右键单击并选择“Toggle Breakpoint”选项。\[2\] 2. 进入Debug模式:按下快捷键“Shift+F9”或点击菜单栏中的“Run” -> “Debug”来进入Debug模式。 3. 运行程序:在Debug模式下,点击运行按钮或按下快捷键“Shift+F10”来运行程序。当代码执行到您设置的断点处时,程序会自动暂停。 4. 查看调试信息:在Debug模式下,您可以使用调试工具栏上的各种功能来查看程序的运行状态、变量值以及函数调用等信息。例如,可以使用“Step Over”按钮逐行执行代码,使用“Step Into”按钮进入函数调用,使用“Evaluate Expression”按钮查看变量值等等。 5. 终止程序的执行:调试完成后,单击调试面板上的“Terminate”按钮或工具栏上的“Stop”按钮来终止程序的执行。\[2\] 通过合理利用PycharmDebug功能,您可以更快地定位和解决代码中的问题,提高开发效率。希望以上信息对您有帮助。 #### 引用[.reference_title] - *1* *3* [最全的Pycharm debug技巧](https://blog.csdn.net/stay_foolish12/article/details/123677944)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Pycharm Debug调试技巧](https://blog.csdn.net/qq_42076902/article/details/130179064)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

马鹏森

太谢谢了

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值