溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python中有哪些常用的魔術(shù)命令

發(fā)布時(shí)間:2021-06-24 15:32:29 來源:億速云 閱讀:244 作者:Leah 欄目:大數(shù)據(jù)

這篇文章給大家介紹Python中有哪些常用的魔術(shù)命令,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。


1 %lsmagic:找出全部命令

如果你只記得一個(gè)魔術(shù)命令,那必須得是這一個(gè)。執(zhí)行 %lsmagic 命令將提供所有可用魔術(shù)命令的列表:

Python中有哪些常用的魔術(shù)命令

2 %debug:交互式 debug

這可能是我最常使用的魔術(shù)命令了。

大部分?jǐn)?shù)據(jù)科學(xué)家都遇到過這種情況:執(zhí)行的代碼塊一直 break,你絕望地寫了 20 個(gè) print() 語句,想輸出每個(gè)變量的內(nèi)容。然后,當(dāng)你最終修復(fù)問題后,你還得返回并再次刪除所有 print() 語句。

不過以后再也不用這樣了。遇到問題后只需執(zhí)行 %debug 命令,即可執(zhí)行想要運(yùn)行的任意代碼部分:

Python中有哪些常用的魔術(shù)命令

上圖中發(fā)生了什么?

我們有一個(gè)函數(shù),它以列表為輸入,并對(duì)所有的偶數(shù)取平方值。

我們運(yùn)行函數(shù),但是出了些問題。但是我們并不知道怎么回事!

對(duì)該函數(shù)使用%debug 命令。

讓調(diào)試器告訴我們 x 和 type(x) 的值。

問題顯而易見:我們把'6'作為字符串輸入到函數(shù)中了!

這對(duì)于更復(fù)雜的函數(shù)非常有用。

3 %store:在 notebook 之間傳遞變量

這個(gè)命令也很酷。假設(shè)你花了一些時(shí)間清洗 notebook 中的數(shù)據(jù),現(xiàn)在你想在另一個(gè) notebook 中測(cè)試一些功能,那么你是在同一個(gè) notebook 中實(shí)現(xiàn)該功能,還是保存數(shù)據(jù)并在另一個(gè) notebook 中加載數(shù)據(jù)呢?使用%store 命令后,這些操作都不需要!該命令將存儲(chǔ)變量,你可以在其他任意 notebook 中檢索該變量:

Python中有哪些常用的魔術(shù)命令

%store [variable] 存儲(chǔ)變量。

%store -r [variable] 讀取/檢索存儲(chǔ)變量。

4 %who:列出所有全局變量。

你是否遇到過,為變量賦值后卻忘記變量名的情況?或者不小心刪掉了負(fù)責(zé)為變量賦值的單元格?使用%who 命令,你可以得到所有全局變量的列表:

Python中有哪些常用的魔術(shù)命令

5 %%time:計(jì)時(shí)魔法命令

使用該命令可以獲取所有計(jì)時(shí)信息。只需對(duì)任意可執(zhí)行代碼應(yīng)用%%time 命令,你就可以得到如下輸出:

Python中有哪些常用的魔術(shù)命令

6 %%writefile:向文件寫入單元格內(nèi)容

在 notebook 中寫復(fù)雜函數(shù)或類,且想將其保存到專屬文件中時(shí),該魔法命令非常有用。只需為函數(shù)或類的單元格添加 %%writefile 前綴和想要保存到的文件名即可:

Python中有哪些常用的魔術(shù)命令

如上所示,我們可以將創(chuàng)建的函數(shù)保存到 utils.py 文件中,然后就可以隨意導(dǎo)入了。在其他 notebook 中也可以這樣,只要與 utils.py 文件屬于同一個(gè)目錄即可。

關(guān)于Python中有哪些常用的魔術(shù)命令就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI