python进行debug操作实战训练

 更新时间:2023年06月15日 09:27:05   作者:今天一定要洛必达  
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操作内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python批量处理csv并保存过程解析

    Python批量处理csv并保存过程解析

    这篇文章主要介绍了Python批量处理csv并保存过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • 使用Python中的pytesseract模块实现抓取图片中文字

    使用Python中的pytesseract模块实现抓取图片中文字

    最近同事用网上提供扫描软件进行扫描识别文字,每天上线只能够做两次扫描,请求我研发一个小工具帮助解决识别图片的中文字,最终我选择使用pytesseract模块可以解决这个需求问题,本文给大家分享实现代码操作感兴趣的朋友跟随小编一起看看吧
    2022-11-11
  • python爬虫工具例举说明

    python爬虫工具例举说明

    在本篇文章里小编给大家整理的是一篇关于python爬虫工具例举说明内容,有兴趣的朋友们可以学习下。
    2020-11-11
  • Python数据可视化之matplotlib.pyplot绘图的基本参数详解

    Python数据可视化之matplotlib.pyplot绘图的基本参数详解

    matplotlib.pyplot模块是一个功能强大的画图模块,可以对画图的多个参数进行调整,下面这篇文章主要给大家介绍了关于Python数据可视化之matplotlib.pyplot绘图基本参数的相关资料,需要的朋友可以参考下
    2022-04-04
  • Python进阶之列表推导与生成器表达式详解

    Python进阶之列表推导与生成器表达式详解

    这篇文章主要为大家详细介绍了Python中列表推导与生成器表达式的相关知识,文中的示例代码讲解详细,具有一定的参考价值,需要的可以参考一下
    2023-04-04
  • pytorch中的reshape()、view()、nn.flatten()和flatten()使用

    pytorch中的reshape()、view()、nn.flatten()和flatten()使用

    这篇文章主要介绍了pytorch中的reshape()、view()、nn.flatten()和flatten()使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • 实践Vim配置python开发环境

    实践Vim配置python开发环境

    这篇文章给大家分享了Vim配置python开发环境的实践心得,大家可以跟着尝试操作下。
    2018-07-07
  • Python之PyQt6对话框的实现

    Python之PyQt6对话框的实现

    这篇文章主要介绍了Python之PyQt6对话框的实现,文章内容详细,简单易懂,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2023-01-01
  • 通过Python编写一个简单登录功能过程解析

    通过Python编写一个简单登录功能过程解析

    这篇文章主要介绍了通过Python编写一个简单登录功能过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • sklearn线性逻辑回归和非线性逻辑回归的实现

    sklearn线性逻辑回归和非线性逻辑回归的实现

    这篇文章主要介绍了sklearn线性逻辑回归和非线性逻辑回归的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06

最新评论