Python必備技能之debug調(diào)試教程詳解
哈嘍兄弟們,今天來分享一下,Python初學(xué)者必須要學(xué)會(huì)的技能,Python進(jìn)行debug操作。
本文用的測(cè)試代碼:
from torchvision import transforms from torchvision.datasets import FashionMNIST import os os.environ["KMP_DUPLICATE_LIB_OK"]="TRUE" #數(shù)據(jù)集準(zhǔn)備 train_data = FashionMNIST( root = "./data/FashionMNIST", train = True, transform = transforms.ToTensor(), download = True #如果沒下載數(shù)據(jù),就下載數(shù)據(jù);如果已經(jīng)下載好,就換為False ) test_data = FashionMNIST( root = "./data/FashionMNIST", train = False, transform = transforms.ToTensor(), download = True #如果沒下載數(shù)據(jù),就下載數(shù)據(jù);如果已經(jīng)下載好,就換為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環(huán)境介紹
點(diǎn)擊這個(gè)爬蟲就可開始debug
在debug前我們需要設(shè)置斷點(diǎn):(設(shè)置幾個(gè)都行)
進(jìn)入debug后,左下角:
1)debugger里面可以看到存在的變量:
2)console里面可以我們一步步調(diào)試的過程,輸出的結(jié)果會(huì)打印在里面:
二、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:單步執(zhí)行(遇到函數(shù)也是單步)
注意看藍(lán)色的線變化(藍(lán)色的線,代表即將被debug,但是還沒有debug到)
剛我debug了兩次,結(jié)果如下:
step into 遇到進(jìn)了函數(shù)也是單步(以我們這里定義的循環(huán)打印函數(shù)為例):
2.2、step over:單步執(zhí)行(遇到函數(shù),全部運(yùn)行)
這個(gè)相比step over 就是函數(shù)里執(zhí)行的區(qū)別:(step over 是直接執(zhí)行完)
2.3、step into my code:(直接跳到下一個(gè)斷點(diǎn))
這個(gè)很好理解了,這里我有三個(gè)斷點(diǎn),所以會(huì)debug三次,然后結(jié)束:
2.4、step out : 執(zhí)行完剩下的函數(shù),并跳到上一層函數(shù)
就是之前在函數(shù)內(nèi)部單步調(diào)試時(shí),用step out 能一下執(zhí)行完,返回到上一層函數(shù)。
用了之后,整個(gè)函數(shù)直接執(zhí)行完,但進(jìn)程未結(jié)束
看藍(lán)色的線,返回到了上一層函數(shù)
到此這篇關(guān)于Python必備技能之debug調(diào)試教程詳解的文章就介紹到這了,更多相關(guān)Python debug調(diào)試內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python中Selenium+Webdriver實(shí)現(xiàn)自動(dòng)化登錄
本文主要介紹了python中Selenium+Webdriver實(shí)現(xiàn)自動(dòng)化登錄,包括測(cè)試環(huán)境的搭建、代碼編寫、以及注意事項(xiàng)等,具有一定的參考價(jià)值,感興趣的可以了解一下2023-09-09在Python代碼中執(zhí)行Linux命令的詳細(xì)用法教程
在Python開發(fā)過程中,經(jīng)常需要執(zhí)行Linux系統(tǒng)命令來完成各種任務(wù),Python提供了多種方式來調(diào)用和執(zhí)行系統(tǒng)命令,本文將詳細(xì)介紹如何在Python代碼中執(zhí)行Linux命令,并結(jié)合實(shí)際案例來演示這些方法的使用,需要的朋友可以參考下2024-07-07Django項(xiàng)目主urls導(dǎo)入應(yīng)用中views的紅線問題解決
這篇文章主要介紹了Django項(xiàng)目主urls導(dǎo)入應(yīng)用中views的紅線問題解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08Python 多線程C段掃描、檢測(cè) Ping掃描腳本的實(shí)現(xiàn)
這篇文章主要介紹了Python 多線程C段掃描、檢測(cè) Ping掃描腳本的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-09-09python手機(jī)號(hào)前7位歸屬地爬蟲代碼實(shí)例
這篇文章主要介紹了python手機(jī)號(hào)前7位歸屬地爬蟲代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03Python虛擬環(huán)境項(xiàng)目實(shí)例
這篇文章主要介紹了Python虛擬環(huán)境項(xiàng)目實(shí)例步驟,以及遇到的問題解決辦法。2017-11-11