作者:Arno
審稿:童蒙
編輯:amethyst
魔法函數(shù)介紹
所謂jupyter-lab的魔法函數(shù)辜荠, 實(shí)際上是jupyter-lab所使用的Python的內(nèi)核—Ipython,預(yù)先定義好的具備特定功能的函數(shù)被放到Jupyter中使用抓狭,這其實(shí)是Ipython特有的函數(shù)伯病,并不是Python的內(nèi)置函數(shù)。因此否过,脫離Ipython的使用環(huán)境后午笛,比如再使用Pycharm或Python自帶的IDLE等其他python的開發(fā)環(huán)境時(shí),這些函數(shù)是無法被解析運(yùn)行的苗桂。所以药磺,在jupyter中使用魔法函數(shù)也是jupyter中亮眼的一大特征。
閑話少說煤伟,接下來我們就來看一下有哪些好用的魔法函數(shù)癌佩。首先魔法函數(shù)的調(diào)用方法是以%或%%開頭的木缝,例如%pwd等調(diào)用Ipython中的pwd命令,固定寫法围辙,記住即可我碟。
%Ismagic函數(shù)可以列出所有magics命令,可以看出總共包含兩大類姚建,針對(duì)于行使用的line magics和針對(duì)于于單元格使用的cell magics矫俺。其中所有的line magics以%調(diào)用,而所有的cell magics以%%調(diào)用掸冤,應(yīng)當(dāng)放于cell的首行使用厘托。
%quickref函數(shù)可以列出所有魔法函數(shù)的簡(jiǎn)單幫助文檔,%magic可以輸出所有魔法函數(shù)詳細(xì)的幫助文檔稿湿,如果想查看具體某一個(gè)魔法函數(shù)的詳細(xì)幫助文檔铅匹,可以直接在調(diào)用魔法函數(shù)時(shí)再后邊跟上?即可缎罢,如:
常用魔法函數(shù)
下面為大家介紹一些常用的魔法函數(shù)伊群,關(guān)于其他的一些魔法函數(shù)大家可以按照上面的方面查看幫助文檔學(xué)習(xí)即可。
- %pwd %cd 顯示當(dāng)前工作目錄策精,且更換工作目錄
- %time 計(jì)算當(dāng)前代碼運(yùn)行時(shí)長(zhǎng)舰始;%timeit 計(jì)算當(dāng)前代碼行的平均運(yùn)行時(shí)長(zhǎng);%%timeit 計(jì)算當(dāng)前cell的代碼運(yùn)行時(shí)長(zhǎng)
-
%run 運(yùn)行外部python腳本咽袜;%load 載入外部腳本到當(dāng)前
-
%history(%hist)列出歷史輸入的指令,類似于linux的history命令丸卷;%dhist輸出歷史訪問目錄
-
%who 顯示當(dāng)前Jupyter環(huán)境中的所有變量或名稱;%reset 刪除當(dāng)前Jupyter環(huán)境中的所有變量或名稱
%%writefile:將cell中的內(nèi)容輸出到目標(biāo)文件询刹;%notebook:寫入notebook的ipynb文檔
- %matplotlib inline:效果等價(jià)于plt.show()
- %conda:cell中安裝package; %pip:在cell中使用pip指令
- 一些魔法函數(shù)可以實(shí)現(xiàn)一些linux系統(tǒng)的命令谜嫉,如%pycat:預(yù)覽文件,類似linux中cat凹联;%less沐兰,類似linux的less命令;類似的還有%more蔽挠,%mkdir住闯,%rmdir,%echo,%env澳淑,%alias等實(shí)現(xiàn)linux系統(tǒng)的命令
總結(jié)
以上為一些常用的魔法函數(shù)比原,可以有效的提升我們編寫代碼文檔的效率, 每個(gè)魔法函數(shù)都有其參數(shù)杠巡,可以具體的查看魔法函數(shù)的幫助文檔進(jìn)行學(xué)習(xí)量窘。