Python必备技能之debug调试教程详解
作者:轻松学Python 时间:2023-03-01 19:26:10
哈喽兄弟们,今天来分享一下,Python初学者必须要学会的技能,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 能一下执行完,返回到上一层函数。
用了之后,整个函数直接执行完,但进程未结束
看蓝色的线,返回到了上一层函数
来源:https://blog.csdn.net/ooowwq/article/details/129585517
标签:Python,debug
0
投稿
猜你喜欢
关于base64编码的原理及实现方法分享
2023-08-31 07:34:40
Python伪随机数模块random详解
2022-12-21 01:06:39
最新mysql-5.7.21安装和配置方法
2024-01-28 13:14:04
python简单实现插入排序实例代码
2021-11-27 14:33:04
TensorFlow搭建神经网络最佳实践
2021-03-11 18:59:26
django配置app中的静态文件步骤
2021-03-15 21:43:57
replace MYSQL字符替换函数sql语句分享(正则判断)
2024-01-20 15:07:43
python中的subprocess.Popen()使用详解
2023-08-01 18:55:23
vue实现导航栏效果(选中状态刷新不消失)
2024-05-09 15:18:31
详解MySql中InnoDB存储引擎中的各种锁
2024-01-13 10:40:32
Python如何避免文件同名产生覆盖
2021-02-05 21:16:34
Python利用Django如何写restful api接口详解
2022-11-16 13:26:32
asp下过滤非法的SQL字符的函数代码
2011-03-03 11:23:00
TensorFlow通过文件名/文件夹名获取标签,并加入队列的实现
2023-02-14 17:08:47
asp如何防止计数器刷新计数?
2009-11-22 19:19:00
Golang多线程爬虫高效抓取大量数据的利器
2024-02-20 06:24:44
SqlServer异常处理常用步骤
2024-01-26 01:56:32
现代Python编程的四个关键点你知道几个
2023-11-22 02:17:42
为什么python比较流行
2023-06-26 02:24:22
Python实现的合并两个有序数组算法示例
2021-07-11 10:44:10