• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

pythonpython进行debug操作

武飞扬头像
今天一定要洛必达
帮助2


前言

这也算是大学本科不好好学习,拉下的账了,今天终要补回来了。
本文用的测试代码:

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 能一下执行完,返回到上一层函数
学新通

学新通
用了之后,整个函数直接执行完,但进程未结束
学新通
看蓝色的线,返回到了上一层函数
学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhhchkfc
系列文章
更多 icon
同类精品
更多 icon
继续加载