哈嘍兄弟們,今天來分享一下,Python初學者必須要學會的技能,Python進行debug操作。 本文用的測試代碼: from torchvision import transforms from torchvision.datasets import FashionMNIST import os ...
哈嘍兄弟們,今天來分享一下,Python初學者必須要學會的技能,Python進行debug操作。
本文用的測試代碼:
from torchvision import transforms from torchvision.datasets import FashionMNIST import os os.environ["KMP_DUPLICATE_LIB_OK"]="TRUE" # 對於剛學Python的小伙伴,我給大家準備了2023最新的Python學習資料 # 我都打包好放在這個q裙了 708525271 # 直接加它領取 #數據集準備 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 能一下執行完,返回到上一層函數。
用了之後,整個函數直接執行完,但進程未結束。
看藍色的線,返回到了上一層函數
