使用交互式shell來(lái)增強(qiáng)你的Python
Python 編程語(yǔ)言已經(jīng)成為 IT 中使用的***的語(yǔ)言之一。成功的一個(gè)原因是它可以用來(lái)解決各種問題。從網(wǎng)站開發(fā)到數(shù)據(jù)科學(xué)、機(jī)器學(xué)習(xí)到任務(wù)自動(dòng)化,Python 生態(tài)系統(tǒng)有豐富的框架和庫(kù)。本文將介紹 Fedora 軟件包集合中提供的一些有用的 Python shell 來(lái)簡(jiǎn)化開發(fā)。
Python Shell
Python Shell 讓你以交互模式使用解釋器。這在測(cè)試代碼或嘗試新庫(kù)時(shí)非常有用。在 Fedora 中,你可以通過在終端會(huì)話中輸入 python3
來(lái)調(diào)用默認(rèn)的 shell。雖然 Fedora 提供了一些更高級(jí)和增強(qiáng)的 shell。
IPython
IPython 為 Python shell 提供了許多有用的增強(qiáng)功能。例如包括 tab 補(bǔ)全,對(duì)象內(nèi)省,系統(tǒng) shell 訪問和命令歷史檢索。許多功能也被 Jupyter Notebook 使用,因?yàn)樗讓邮褂?IPython。
安裝和運(yùn)行 IPython
dnf install ipython3
ipython3
使用 tab 補(bǔ)全會(huì)提示你可能的選擇。當(dāng)你使用不熟悉的庫(kù)時(shí),此功能會(huì)派上用場(chǎng)。
如果你需要更多信息,輸入 ?
命令來(lái)查看文檔。對(duì)此的更多詳細(xì)信息,你可以使用 ??
命令。
另一個(gè)很酷的功能是使用 !
字符執(zhí)行系統(tǒng) shell 命令的能力。然后可以在 IPython shell 中引用該命令的結(jié)果。
IPython 完整的功能列表可在官方文檔中找到。
bpython
bpython 并不能像 IPython 做那么多,但它卻在一個(gè)簡(jiǎn)單的輕量級(jí)包中提供了一系列有用功能。除其他功能之外,bpython 提供:
- 內(nèi)嵌語(yǔ)法高亮顯示
- 在你輸入時(shí)提供自動(dòng)補(bǔ)全建議
- 可預(yù)期的參數(shù)列表
- 能夠?qū)⒋a發(fā)送或保存到 pastebin 服務(wù)或文件中
安裝和運(yùn)行 bpython
dnf install bpython3
bpython3
在你輸入的時(shí)候,bpython
為你提供了選擇來(lái)自動(dòng)補(bǔ)全你的代碼。
當(dāng)你調(diào)用函數(shù)或方法時(shí),會(huì)自動(dòng)顯示需要的參數(shù)和文檔字符串。
另一個(gè)很好的功能是可以使用功能鍵 F7
在外部編輯器(默認(rèn)為 Vim)中打開當(dāng)前的 bpython
會(huì)話。這在測(cè)試更復(fù)雜的程序時(shí)非常有用。
有關(guān)配置和功能的更多細(xì)節(jié),請(qǐng)參考 bpython 文檔。
總結(jié)
使用增強(qiáng)的 Python shell 是提高生產(chǎn)力的好方法。它為你提供增強(qiáng)的功能來(lái)編寫快速原型或嘗試新庫(kù)。你在使用增強(qiáng)的 Python shell 嗎?請(qǐng)隨意在評(píng)論區(qū)留言。