Python程式碼規範

pythontab發表於2014-11-03

1. 一致性的建議

打破一條既定規則的兩個好理由

當應用這個規則將導致程式碼可讀性下降,即使對於某人來說他已經習慣於按照這條規則來閱讀程式碼了

為了和周圍的程式碼保持一致而打破規則(也許是歷史原因)

2. 程式碼的佈局

縮排

4個空格

程式碼行

行最大長度 : 79字元

推薦長度 : 72字元

分割方式 : "" , "()" , "{}"

空行

兩行空行分割頂層函式和類的定義

一行空行分割方法或函式

額外空行分割相關函式群

類定義與第一個方法定義需要一行空行

編碼

萬年 "UTF-8"

匯入

先import標準模組,再from ... import第三方模組(絕對路徑) ,最後from ... import自建模組

每組匯入空一行,一行匯入一個包[模組,類等]

空格

緊貼各類括號

緊貼逗號,分號,冒號前

緊貼函式呼叫引數列表前開放式括號

緊貼再索引或切片括號

二元運算子或運算子或邏輯等兩邊各留一個空格

預設引數或關鍵引數"="不留空格

3. 註釋

註釋塊

與相應程式碼有著相同縮排

行內註釋

與程式碼被註釋程式碼同行,以"#"+" "開頭

文件註釋

結尾處 """ 單獨成行

版本註記

模組文件字串之後,所有程式碼之前,上下空行分割

4. 命名

約定

模組名 : 不含下劃線 ; 小寫 ; 剪短

類名,異常名 : 首字母大寫單詞串

方法,函式 : 第一個字母小寫的首字母大寫單詞串

屬性,例項,變數 : 小寫字母串

繼承

私有 : 雙下劃線開頭

非公有 : 單下劃線開頭

命名衝突

不降低可讀性,能改就改,不能就在末尾加單個下劃線或者數字

5. 設計建議

使用"is"或"is not"進行對"None"的單值比較

使用字串方法代替字串模組

使用startswith()和endswith()檢查前字尾而不是使用切片

使用isinstance()判斷物件是否是字串而不是使用type()

判斷空序列或字典不要使用len()

書寫字串文字不要依賴有意義的後置空格

不要用"=="比較布林值



文章轉自:http://www.cnblogs.com/erliang/p/4065605.html

相關文章