国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

12個常用的IPython魔法命令

開發 后端
IPython中有一些特有的魔法命令,如果能合理的利用這些魔法命令,會省去很多不必要的操作,為編程帶來很大程度的便利,下面就來安利十二個常用的魔法命令。

[[333390]]

不能以偏概全哈,就我個人而言,在日常編程中一般都會用到兩個編譯器——Pycharm和Jupyter,在刷算法、寫爬蟲時會用到前者,因為我習慣用Pycharm里的Debug功能調試,很容易找出代碼中的Bug。

而進行數據分析、機器學習時就會用到后者,因為Jupyter編譯器利用的IPython是一種交互式計算和開發環境,對數據的可視化十分友好,這類單元格的形式每一步都有運行結果,便于整理自己思路,并且很大程度上節約了運行時間,在調試的時候只需要運行出錯的部分代碼,而不是全部。

IPython中有一些特有的魔法命令,如果能合理的利用這些魔法命令,會省去很多不必要的操作,為編程帶來很大程度的便利,下面就來安利十二個常用的魔法命令。

基礎常識

  •  ?和?? ->例:%matplotlib?、%matplotlib??

后綴為?可以獲取一個對象的相關信息,比如描述一個方法該怎么用;后綴為??可以獲取該對象更加詳細的信息,比如源碼。這個對象可以是IPython中自帶的、也可以是導入的、也可以是自己定義的。

  •  %和%% ->例:%time、%%time

前綴為%被稱作行魔法命令(line magics),只能在單個輸入行上運行;前綴為%%被稱作單元格魔法命令(cell magics),可以在多個輸入行上運行。

1.%Ismagic和%magic

如果你還不了解IPython的魔法命令,那這兩個魔法命令一定是最重要的,記牢這兩個命令之后慢慢了解剩下的。%lsmagic的作用就是列出所有存在的行魔法命令和單元格魔法命令,部分截圖如下:

%magic的作用就是給出所有魔法命令的詳細介紹,比如介紹、樣例等等,比較考驗英語功底,耐下心慢慢了解。

2.%pdb

輸入這個命令并且運行之后,如果后面的代碼出現了異常,這個指令就會主動進入調試器,幾十行幾百行代碼難免會有幾個或一堆Bug。可能比較笨的方法就是找斷點然后print,最后還要把print刪掉,而%pdb調試找到Bug后直接退出就好,相對前者更方便些。

比如兩個數相加,不小心把一個整數定義成字符型,在調用函數計算時會發生報錯,然后就可以進入調試器進行調試,切記最后要通過exit()退出,不能直接終止單元格運行。

3.%debug

%debug的作用與%pdb幾乎是一樣的,不同之處就是%pdb在遇到異常自動進入調試器,而%debug是人遇到報錯主動輸入指令進入調試器,仍然是上面那個例子,調試界面如下:

主動和被動兩種調試方式大家可以靠自己喜好選擇,我個人比較喜歡%debug。

4.%who和%whos

代碼一多變量可能就會變多,變量一多可能就會混淆,或者在刪除單元格的時候不小心把變量定義的單元格也刪掉了,%who和%whos這兩條命令就起到大作用了。

%who給出的信息只有全局變量的名稱,而%whos給出的信息更加詳細,包括變量名稱、類型、和數據。

5.%time和%timeit

這兩條命令都是用來輸出代碼的執行時間,比如可以用來粗略的比較兩種算法在相同的問題上執行時間哪一個更少,不同點在于%time只執行一次就輸出執行時間,而%timeit是執行多次然后計算平均時間再輸出。

比如這里%timeit命令輸出中有7 runs代表共執行7次,這兩個命令都為行命令,%%time和%%timeit為單元格命令,區別同上。

6.%store

如果你在一個文件中花了很長的時間清理了一些數據,比如對原始數據缺失值填充呀、降維呀、轉換呀等等,然后在另一個文件中需要用到同樣的數據,笨一點方法就是將數據保存然后在新文件中調用,但這種操作一條%store命令就能完成,我們先在一個文件中利用%store保存一個變量。

然后在另一個文件中調用這個變量:

可以看到直接調用是會報錯的,但利用了%store -r命令之后就可以成功調用被%store保存的變量,所以%store用來保存,%store -r用來讀取。

7.%xdel和%reset

這條命令的作用就是刪除變量,并且刪除其在IPython中的對象上的一切引用。平時在數據清洗時,從原始數據到清洗后的數據中間要經過很多步驟,我們不可能全程用一個變量名稱,所以中間步驟很容易為數據起一些類似的名稱,而利用%xdel就可以將無用的單個變量名稱刪掉,防止混淆。

%reset的作用就是刪除所有變量名。

8.%cls

在數據清洗時候,通常都是做一步然后輸出一次數據集,觀察一下變化,我們都知道展示數據集是很占網頁的,久而久之,這個notebook就特別長,再想查看文件前面的內容不僅需要滾動很長時間滑輪,而且數據間很容易混淆,所以每當輸出一次數據集后可以利用%cls命令清除一次,使notebook看起來更整潔。

可以看到正常的話data之后會打印數據集,但利用%cls之后數據集的輸出被清除了。

9.%%writefile

如果我們想寫一個函數,例如去除中文符號的函數,這樣的函數在很多情景下都可以利用,所以我們可以將這個函數寫入一個單獨文件,想用的時候直接調用,這個操作可以利用%%writefile命令進行寫入。

10.%run

%run命令的作用就是運行腳本文件,不僅可以直接使用腳本文件中的代碼,腳本文件也可以使用IPython環境中的變量,仍用上面的例子,可以用%run命令直接運行。

11.%psource

如果你在notebook定義了一個函數,但隔了比較久需要用到這個函數,但是可能忘記了這個函數需要傳入哪些參數、或者傳入參數的類型應該是什么,這種情況下就不得不往前翻尋找這個函數的代碼,但利用%psource可以偷懶,這個命令就是輸出源代碼。

前面提及的??也有相同的作用,但是輸出的形式沒有%psource直觀,還混有其它的信息在里面。

12.%hist

%hist的作用就是打印所有命令行輸入的歷史記錄,方便查看之前輸入的代碼信息。

這個命令允許設置查詢的區間,也就是命令行輸入對應的序號。

這些魔法命令有一部分能被常用的代碼語句代替,但是卻沒有魔法命令簡單明了,只是個人習慣的問題,如果可能盡量改掉自己的思維定式,用更加便捷的代碼處理問題。 

 

責任編輯:龐桂玉 來源: Python中文社區
相關推薦

2024-06-19 10:08:42

Python編程while循環

2022-07-28 08:33:59

JupyterPython

2020-04-25 19:00:15

Linux終端命令

2024-03-18 15:04:02

物聯網通信協議IOT

2022-10-25 16:36:03

機器學習深度學習數據集

2018-01-15 13:20:26

Linux命令IP

2020-05-22 11:20:56

Linux命令文件

2021-09-27 18:07:06

物聯網協議物聯網IOT

2025-07-10 00:16:00

2010-07-28 15:42:44

Flex

2022-11-06 17:48:39

Linux系統命令

2020-04-14 15:10:38

Linux終端命令

2017-02-27 14:50:36

Linux命令數據

2013-09-10 10:34:49

PowerShell

2013-11-13 13:55:16

Linux命令grep

2015-07-21 16:06:49

Linux進程管理命令

2016-11-09 14:53:33

virsh命令虛擬機

2021-03-16 10:12:24

python內置函數

2023-11-02 10:24:30

KubectlKubernetes

2011-02-16 09:26:49

點贊
收藏

51CTO技術棧公眾號

国产午夜亚洲精品不卡| 精品美女在线播放| 亚洲第五色综合网| 日韩av电影国产| 黄网站app在线观看大全免费视频| 最新地址在线观看| 新片速递亚洲合集欧美合集| 中文字幕一区二区三区欧美日韩| 久久综合九色综合欧美亚洲| 精品亚洲一区二区三区四区五区| 懂色中文一区二区在线播放| 国产精品一区二区男女羞羞无遮挡 | 免费在线高清av| 人人爱人人干婷婷丁香亚洲| 在线成人亚洲| 精品久久久久久久久久ntr影视| 欧美人妇做爰xxxⅹ性高电影| 精品国产欧美一区二区三区成人| 久久久视频在线| 国产在线观看一区二区三区| 黄大色黄女片18第一次| 亚洲免费电影一区| 精品丝袜在线| 国产精品日本一区二区不卡视频| 美腿丝袜在线亚洲一区 | 亚洲日本成人网| 日韩最新中文字幕电影免费看| 久久久免费精品视频| 日本中文在线| 中文字幕av导航| 91午夜在线播放| 国产激情视频一区二区在线观看| 国产99精品国产| 亚洲国产精品99久久久久久久久 | 日韩精品一区二区三区视频播放 | 一二三区高清| 日韩视频 中文字幕| 国产精品久久一区二区三区| 欧美黑人性视频| 亚洲欧美日韩一区在线| 欧美精品第一页| 第一福利永久视频精品| 亚洲欧美一区二区不卡| 久久亚洲精品小早川怜子| 激情综合亚洲精品| 免费欧美在线| 国产在线日韩| 欧美岛国激情| 九九久久电影| 高清一区二区三区| 99久久这里有精品| 外国成人直播| mm视频在线视频| 色屁屁www国产馆在线观看| 91露出在线| 成黄免费在线| 精品久久av| 可以直接在线观看的av| 免费观影入口看日本视频| 国产一伦一伦一伦| 欧美一级裸体视频| 欧美黄色一级片视频| 欧美v在线观看| 大伊香蕉精品视频在线| 国产午夜精品视频一区二区三区| 色一情一区二区三区四区| 久久精品欧美| 精品国产乱码久久久久| 国产精品播放| 韩日午夜在线资源一区二区| 成人在线视频网站| 91精品入口蜜桃| 国产66精品久久久久999小说| 666精品在线| 国产精品日韩高清| 精品国产综合区久久久久久| 久久一区二区三区欧美亚洲| 欧美一区免费视频| 亚洲欧美日韩另类精品一区二区三区| 国产精品jizz视频| 国产三区二区一区久久| 北条麻妃高清一区| 2019国产精品视频| 精品国产乱码久久久久久蜜柚| 精品国产综合久久| 亚洲精品国产一区| 日韩精品一区二区在线视频 | 爱草tv视频在线观看992| 久色婷婷小香蕉久久| 91久久人澡人人添人人爽欧美| 国产精品成人一区二区三区吃奶| 中国黄色录像片| 午夜激情电影在线播放| 成人国产精品免费| 操日韩av在线电影| 日日碰狠狠躁久久躁婷婷| 懂色av一区二区| 日韩欧美国产一二三区| 免费在线看黄色片| 四虎5151久久欧美毛片| 欧美精品日韩一区| 成人午夜激情av| 亚洲欧美日本视频在线观看| 国产日韩精品在线播放| 粉嫩av国产一区二区三区| 日韩毛片在线免费观看| 亚洲直播在线一区| 国产香蕉尹人视频在线| 亚洲激情视频| 777午夜精品视频在线播放| 午夜精品福利一区二区| 成人黄页网站视频| 亚洲蜜臀av乱码久久精品| 日本伊人精品一区二区三区介绍| www在线播放| 亚洲图片在线| 亚洲精品福利视频| av大全在线| 亚洲区中文字幕| 天天在线视频色| 国产精品乱码久久久久久| 亚洲自拍偷拍福利| 丰满少妇一区| 色欧美88888久久久久久影院| 欧美日韩激情视频在线观看| 国产视频精品网| 日韩不卡一二区| 欧美丰满熟妇xxxxx| 色视频在线观看免费| 超碰中文在线| 不卡精品视频| 亚洲午夜激情| 国产99久久精品一区二区300| 日韩午夜激情av| 在线观看视频网站你懂得| 韩国三级中文字幕hd久久精品| 国产精品美女在线| 四虎在线精品| 国模无码视频一区二区三区| 四虎黄色影院| 中国日本在线视频中文字幕| 日韩精品一区二区三区色偷偷| 99在线精品视频在线观看| 久久国产精品亚洲| а√天堂在线官网| 欧美三级午夜理伦三级中视频| 国产精品久久久久国产精品日日| 精品日韩中文字幕| 亚洲欧美综合另类中字| 国语自产精品视频在线看抢先版图片| 91福利入口| 久久只精品国产| 韩国成人动漫在线观看| 欧美三区美女| 欧美人成在线观看ccc36| 亚洲一级影院| 国产亚洲欧美色| 国产91精品一区二区麻豆亚洲| 久久天天狠狠| 国产成人av电影免费在线观看| 国产精品久久久久免费| 伊人久久大香线蕉| 性欧美激情精品| 第四色中文综合网| 欧美成人免费一级人片100| 久久久久黄色| 国产欧美日韩高清| 91福利视频在线| www.xxxx欧美| 成人在线精品视频| 国产欧美日韩综合| 日韩特级毛片| 亚洲欧美国产高清va在线播| 亚洲人成电影网站| 国产久一一精品| 蜜桃传媒一区二区三区| 99riav在线| 欧美影院天天5g天天爽| 国产一区 二区 三区一级| 日韩欧美在线一区| 北条麻妃99精品青青久久| 欧美精品一区二区三区在线看午夜 | 日韩av黄色| 国产亚洲午夜| 亚洲亚洲精品在线观看| 久久精品国产一区| 日韩精品av一区二区三区| 最美情侣韩剧在线播放| 视频一区视频二区欧美| 国产中文字幕一区| 欧美日韩mp4| 国产美女91呻吟求| 亚洲欧美自偷自拍另类| 中文在线资源| 欧美特黄一区| 亚洲高清免费观看| 午夜精品一区二区三区在线视| 国产尤物av一区二区三区| а√天堂在线官网| 欧美激情偷拍|