安利十二個常用的IPython魔法命令
? ??不能以偏概全哈,就我個人而言,在日常編程中一般都會用到兩個編譯器——Pycharm和Jupyter,在刷算法、寫爬蟲時會用到前者,因?yàn)槲伊?xí)慣用Pycharm里的Debug功能調(diào)試,很容易找出代碼中的Bug。
而進(jìn)行數(shù)據(jù)分析、機(jī)器學(xué)習(xí)時就會用到后者,因?yàn)镴upyter編譯器利用的IPython是一種交互式計算和開發(fā)環(huán)境,對數(shù)據(jù)的可視化十分友好,這類單元格的形式每一步都有運(yùn)行結(jié)果,便于整理自己思路,并且很大程度上節(jié)約了運(yùn)行時間,在調(diào)試的時候只需要運(yùn)行出錯的部分代碼,而不是全部。
IPython中有一些特有的魔法命令,如果能合理的利用這些魔法命令,會省去很多不必要的操作,為編程帶來很大程度的便利,下面就來安利十二個常用的魔法命令。
基礎(chǔ)常識
?和???->例:%matplotlib?、%matplotlib??
后綴為?可以獲取一個對象的相關(guān)信息,比如描述一個方法該怎么用;后綴為??可以獲取該對象更加詳細(xì)的信息,比如源碼。這個對象可以是IPython中自帶的、也可以是導(dǎo)入的、也可以是自己定義的。
%和%% ->例:%time、%%time
前綴為%被稱作行魔法命令(line magics),只能在單個輸入行上運(yùn)行;前綴為%%被稱作單元格魔法命令(cell magics),可以在多個輸入行上運(yùn)行。
1.%Ismagic和%magic
如果你還不了解IPython的魔法命令,那這兩個魔法命令一定是最重要的,記牢這兩個命令之后慢慢了解剩下的。%lsmagic的作用就是列出所有存在的行魔法命令和單元格魔法命令,部分截圖如下:

%magic的作用就是給出所有魔法命令的詳細(xì)介紹,比如介紹、樣例等等,比較考驗(yàn)英語功底,耐下心慢慢了解。
2.%pdb
輸入這個命令并且運(yùn)行之后,如果后面的代碼出現(xiàn)了異常,這個指令就會主動進(jìn)入調(diào)試器,幾十行幾百行代碼難免會有幾個或一堆Bug。可能比較笨的方法就是找斷點(diǎn)然后print,最后還要把print刪掉,而%pdb調(diào)試找到Bug后直接退出就好,相對前者更方便些。

3.%debug

4.%who和%whos

5.%time和%timeit

6.%store


7.%xdel和%reset

8.%cls

9.%%writefile

10.%run

11.%psource

12.%hist


python爬蟲人工智能大數(shù)據(jù)公眾號

