日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

代码检查规则:Python语言案例详解

發布時間:2024/10/12 python 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 代码检查规则:Python语言案例详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在之前的文章中代碼檢查規則:Java語言案例詳解學習了Java的檢查規則。我們今天將學習《代碼檢查規則:Python語言案例詳解》,內容主要分為兩個部分:Python的代碼檢查規則和Python編碼慣例。

Python代碼檢查規則的講解

一套良好的代碼檢查規則,可以帶來代碼質量提高,降低缺陷修復和后期維護成本等一系列收益。

Python代碼檢查規則主要分為四個大類,分別是代碼風格規范、引用規范、定義規范和異常處理規范。

代碼風格規范
這一大類的規范規則較為繁瑣,具體又可細分以下七個小類,共計17條規則:

(1)程序規模規范:
①每行不得超過 120 個字符。
②定義的函數長度不得超過 120 行。
這意味著,在編寫代碼時,需要時刻注意自己的程序規模,避免冗余,確保寫出簡潔而高效的代碼。

(2)語句規范
因為Python與其他語言不同,可以不需要明確的標識符表示語句的結尾,所以規定:
③禁止以分號結束語句。
④在任何情況下,一行只能寫一條語句。

(3)括號使用規范
⑤除非用于明確算術表達式優先級、元組或者隱式行連接,否則盡量避免冗余的括號。

(4)縮進規范
⑥禁止使用Tab進行縮進,而統一使用4個空格進行縮進。

需要將單行內容拆成多行寫時規定:
⑦與首行保持對齊;或者首行留空,從第二行起統一縮進4個空格。

(5)空行規范
⑧文件級定義(類或全局函數)之間,相隔兩個空行;類方法之間,相隔一個空行。

(6)空格規范
⑨括號之內均不添加空格。
⑩參數列表、索引或切片的左括號前不應加空格。
?逗號、分號、冒號之前均不添加空格,而是在它們之后添加一個空格。
?所有二元運算符前后各加一個空格。
?關鍵字參數或參數默認值的等號前后不加空格。

(7)注釋規范
?每個文件都必須有文件聲明,每個文件聲明至少必須包括以下三個方面的信息:版權聲明、功能和用途介紹、修改人及聯系方式。

另外在使用文檔字符串(docstirng)進行注釋時,規定:
?使用docstring描述模塊、函數、類和類方法接口時,docstring必須用三個雙引號括起來。
?對外接口部分必須使用docstring描述,內部接口視情況自行決定是否寫docstring。
?接口的docstring描述內容至少包括以下三個方面的信息:功能簡介、參數、返回值。如果可能拋出異常,必須特別注明。

引用規范
引用規范有嚴格而具體的規定:
①禁止使用 from……import…… 句式直接導入類或函數,而應在導入庫后再行調用。
②每行只導入一個庫。
③按標準庫、第三方庫、應用程序自有庫的順序排列import,三個部分之間分別留一個空行。

定義規范
(1)在變量定義方面,我們有強制的規范規定:
①局部變量使用全小寫字母,單詞間使用下劃線分隔。
②定義的全局變量必須寫在文件頭部。
③常量使用全大寫字母,單詞間使用下劃線分隔

(2)函數的定義規范主要體現在函數的返回值以及默認參數的定義上。
為提高代碼可讀性,對于函數的返回值,規范要求為:
①函數返回值必須小于或等于3個。若返回值大于3個,則必須通過各種具名的形式進行包裝。

為了保障函數的運行效率以及降低后期維護和糾錯的成本,對于函數默認參數的定義有如下要求:
②僅可使用以下基本類型的常量或字面常量作為默認參數:整數、bool、浮點數、字符串、None。

(3)類定義的規范包括了四個方面的內容:
①類的命名使用首字母大寫的駝峰式命名法。
②對于類定義的成員:protected成員使用單下劃線前綴;private成員使用雙下劃線前綴。
③如果一個類沒有基類,必須繼承自ovject類。
④類構造函數應盡量簡單,不能包含可能失敗或過于復雜的操作。
(4)異常處理規范:
在代碼編寫中應該盡量避免出現代碼異常狀態,然而錯誤有時在所難免,對于這些異常狀態的處理,有著明確的規范要求:
①禁止使用雙參數形式或字符串形式的語法拋出異常。
②如需自定義異常,應在模塊內定義名為 Error 的異常基類。并且,該基類必須繼承自 Exception 。其他異常均由該基類派生而來。
③除非重新拋出異常,禁止使用 except:語句捕獲所有異常, 一般情況下,應使except……:語句捕獲具體的異常。
④捕捉異常時,應當使用 as 語法,禁止使用逗號語法。

Python編碼慣例

讓模塊既可被導入又可執行
python不同于編譯型語言,而屬于腳本語言,是動態的逐行解釋運行,沒有統一的程序入口。所以,為了方便模塊之間的相互導入,我們通常自定義一個 main 函數,并使用一個if 語句, if 內置變量 name == ‘main’ ,在這個if 條件下,再去執行 main函數。這樣,我們就能夠實現,讓模塊既可被導入又可執行。

in運算符的使用
in一種簡潔而高效的運算符,很多時候,合理的使用in運算符,可以代替大量的重復判斷過程,降低時間復雜度,提高代碼的運行效率。

不使用臨時變量交換兩個值
Python有更簡潔而高效的語句可以實現交換兩個值的操作,并無必要引入臨時變量來交換兩個值。

用序列構建字符串
對于一個字符串列表、元組等,可以用序列來構建字符串,利用一個空字符串和join函數,就可以避免重復,高效完成相應字符串的構建。

點擊進入獲得更多技術信息~~

總結

以上是生活随笔為你收集整理的代码检查规则:Python语言案例详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。