使用一個命令使您的 Python 代碼更優(yōu)雅、更易讀或更現(xiàn)代

Refurb 是一個 Python 庫,可以使用一個命令對 Python 代碼進行現(xiàn)代化改造或重新設(shè)計,但在他們的網(wǎng)站上聲明了一個重要點:

Refurb 不是樣式/類型檢查器。它旨在使好的代碼變得更好。

這是他們的 GitHub 存儲庫的鏈接:

https://github.com/dosisod/refurb

他們的 GitHub repo 上提供了與他們的工具相關(guān)的非常詳細的信息。

建議使用虛擬環(huán)境安裝refurb

安裝refurb命令如下:

pip install refurb

安裝完成后,讓我們檢查一下它會給我們的代碼文件提供多少建議。

我創(chuàng)建了一個非常基本的py文件,其中包含以下代碼:

此代碼取自其官方存儲庫頁面上給出的示例。


1.png

要檢查 refurb 會對此代碼給出什么樣的建議,請使用命令提示符轉(zhuǎn)到 py 文件所在的目錄并運行以下命令

這里main.py是我的 Python 文件,下面是輸出

2.png

讓我們一一看看這些建議:

第一行,即使用 in (x, y, z) 而不是 in [x, y, z]

表示我在一個列表上循環(huán),它建議我們在元組上循環(huán),因為這將是一種更快的方法。

第二行,即使用 y = Path(x).read_text() 而不是 with open(x) as f: y = f.read()

由于我正在使用 .read() 方法讀取文本文件,因此最好使用 read_text() 命令讀取所有文件的內(nèi)容。

第三行,即x.startswith(y) 或 x.startswith(z) 替換為 x.startswith((y, z))

編寫代碼時的一個關(guān)鍵點是不要重復(fù)自己,同樣推薦這個建議。

第四行,即使用 print() 而不是 print(“”)

這個建議是大多數(shù) Python 開發(fā)人員甚至不知道或不關(guān)心的建議,即,如果你什么都不打印,你甚至不需要在其中傳遞括號。

正如你所看到的,我們只需要運行一個命令,它就會為我們的代碼提供四個建議,如果你想要代碼建議,GitHub copilot 是一個更好的解決方案,但它不是免費的。

要記住的一個關(guān)鍵點:

Refurb 僅支持 Python 3.10。它可以檢查 Python 3.6 及更高版本的代碼,但 refurb 本身必須通過 Python 3.10 運行。

讓我們再看一次推薦:

2.png

您可以看到每個推薦都附有代碼。您可以使用該代碼來獲得它的詳細解釋。

最后一條建議附上代碼FURB105,讓我們看一下它的解釋:

refurb — explain  FURB105

這是輸出 print(") 可以簡化為 print()

因為它正在詳細解釋建議。

假設(shè)您想忽略特定建議;你可以這樣做:

refurb — o FURB105s

現(xiàn)在它將不再在您的 py 文件中推薦與此錯誤代碼相關(guān)的建議。

如果您想為代碼文件創(chuàng)建自己的清單,您也可以這樣做。您可以通過翻新進行大量定制。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容