python进行debug操作实战训练
作者:今天一定要洛必达
debug是编码是非常重要的调试技巧,通过在运行过程中设置断点,帮助开发人员更好的理解运行过程,下面这篇文章主要给大家介绍了关于python进行debug操作的相关资料,需要的朋友可以参考下
前言
这也算是大学本科不好好学习,拉下的账了,今天终要补回来了。
本文用的测试代码:
from torchvision import transforms from torchvision.datasets import FashionMNIST import os os.environ["KMP_DUPLICATE_LIB_OK"]="TRUE" #数据集准备 train_data = FashionMNIST( root = "./data/FashionMNIST", train = True, transform = transforms.ToTensor(), download = True #如果没下载数据,就下载数据;如果已经下载好,就换为False ) test_data = FashionMNIST( root = "./data/FashionMNIST", train = False, transform = transforms.ToTensor(), download = True #如果没下载数据,就下载数据;如果已经下载好,就换为False ) train_data_x=train_data.data train_data_y=train_data.targets test_data_x=test_data.data test_data_y=test_data.targets print(train_data_x.shape) print(train_data_y.shape) print(type(train_data_x)) print(type(train_data_y)) print(test_data_x.shape) print(test_data_y.shape) def function1(x): for i in range(x): print(i) function1(7)
一、debug环境介绍
点击这个爬虫就可开始debug
在debug前我们需要设置断点:(设置几个都行)
进入debug后,左下角:
1)debugger里面可以看到存在的变量:
2)console里面可以我们一步步调试的过程,输出的结果会打印在里面:
二、debug按钮介绍
分别是
1)step over 快捷键:F8
2)step into 快捷键:F7
3)step into my code 快捷键: alt+shift+F7
4) step out 快捷键: shift+F8
2.1、step into:单步执行(遇到函数也是单步)
注意看蓝色的线变化(蓝色的线,代表即将被debug,但是还没有debug到)
刚我debug了两次,结果如下:
step into 遇到进了函数也是单步(以我们这里定义的循环打印函数为例):
2.2、step over:单步执行(遇到函数,全部运行)
这个相比step over 就是函数里执行的区别:(step over 是直接执行完)
2.3、step into my code:(直接跳到下一个断点)
这个很好理解了,这里我有三个断点,所以会debug三次,然后结束:
2.4、step out : 执行完剩下的函数,并跳到上一层函数
就是之前在函数内部单步调试时,用step out 能一下执行完,返回到上一层函数
用了之后,整个函数直接执行完,但进程未结束
看蓝色的线,返回到了上一层函数
总结
到此这篇关于python进行debug操作实战训练的文章就介绍到这了,更多相关python debug操作内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!