IPython 8.0 大版本更新,支援程式碼自動補全

PHPz
發布: 2023-05-06 10:22:06
轉載
1401 人瀏覽過

IPython 8.0 大版本更新,支持代码自动补全

醞釀了3年多,IPython 8.0終於來了。

現在,用上最新版本,你不僅能在命令列裡使用Black重新格式化程式碼,還能獲得更好的自動程式碼補全和Debug體驗。

IPython 8.0 大版本更新,支持代码自动补全

更多詳情,咱們接著往下看。

優化報錯

在8.0版本之前,如果程式碼出錯,IPython的錯誤回溯會顯示一個雜湊值,用於編譯Python AST,就像這樣:

IPython 8.0 大版本更新,支持代码自动补全

而現在,錯誤回溯已經正確格式化,能夠顯示bug所在的特定單元格編號。

IPython 8.0 大版本更新,支持代码自动补全

另外,IPython 8.0還整合了stack_data,這個套件提供了更聰明的追蹤訊息,能夠突出顯示發生錯誤的AST節點,幫助快速定位bug。

例如對於這樣一段程式碼:

IPython 8.0 大版本更新,支持代码自动补全

呼叫bar(),就能得到一個IndexError,IPython 8.0會告訴你索引錯誤具體發生在哪裡。

IPython 8.0 大版本更新,支持代码自动补全

註:在終端機和notebook中,用^標記的位置將顯示為高亮。

還有一個對生產力有較大影響的改進,就是在錯誤回溯的檔案名稱後面加上冒號和行號。

IPython 8.0 大版本更新,支持代码自动补全

許多終端機和編輯器都允許在使用這種語法時,直接跳到相關檔案/行。

自動程式碼補全建議

除了更好的Debug體驗,如果你很喜歡Ptpython裡的程式碼自動補全功能,那麼現在在IPython 8.0裡你也能用上了。

透過ctrl-f,或ctrl-e,或按下右箭頭,就可以接受這些建議。

alt-f快捷鍵則可以只接受建議的第一個單字。

目前,自動建議只能在emacs或vi模式中顯示。

使用「?」和」??」檢視物件資訊

在IPDB中,現在可以用「?」和「??」來顯示物件訊息,在使用IPython提示字元時也一樣:

IPython 8.0 大版本更新,支持代码自动补全

在CLI中用black自動格式化

如果black被安裝在與IPython相同的環境中,那麼現在,終端IPython將在預設情況下盡可能重新格式化命令列(CLI)中的程式碼。

當然,你也可以用 —TerminalInteractiveShell.autoformatter=None 來停用該選項。

歷史範圍全域功能

先前,在使用%history時,使用者可以指定session和行:

IPython 8.0 大版本更新,支持代码自动补全

或使用全域模式:

IPython 8.0 大版本更新,支持代码自动补全

但在8.0以前,這兩種模式不能兼得。如果使用者同時指定了2種模式,IPython將套用全域模式(對所有歷史記錄進行全域化)並忽略指定範圍。

現在,此功能已加強,如果使用者同時指定了範圍和glob模式,則glob模式將套用於指定的歷史範圍。

如果你還想了解更多信息,官網鏈接在此奉上:

#https://www.php.cn/link/003dd617c12d444ff9c80f717c3fa982

#對了,還要提醒一點,如果想用IPython 8.0,你得先把Python升級到3.8以上版本。

以上是IPython 8.0 大版本更新,支援程式碼自動補全的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:51cto.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!