1.一致性的建議
打破一條既定規(guī)則的兩個好理由
當(dāng)應(yīng)用這個規(guī)則將導(dǎo)致代碼可讀性下降,即使對于某人來說他已經(jīng)習(xí)慣于按照這條規(guī)則來閱讀代碼了
為了和周圍的代碼保持一致而打破規(guī)則(也許是歷史原因)
2.代碼的布局
縮進(jìn)
4個空格
代碼行
行最大長度:79字符
推薦長度:72字符
分割方式:"","()","{}"
空行
兩行空行分割頂層函數(shù)和類的定義
一行空行分割方法或函數(shù)
額外空行分割相關(guān)函數(shù)群
類定義與第一個方法定義需要一行空行
編碼
萬年"UTF-8"
導(dǎo)入
先import標(biāo)準(zhǔn)模塊,再from...import第三方模塊(絕對路徑),最后from...import自建模塊
每組導(dǎo)入空一行,一行導(dǎo)入一個包[模塊,類等]
空格
緊貼各類括號
緊貼逗號,分號,冒號前
緊貼函數(shù)調(diào)用參數(shù)列表前開放式括號
緊貼再索引或切片括號
二元操作符或運算符或邏輯等兩邊各留一個空格
默認(rèn)參數(shù)或關(guān)鍵參數(shù)"="不留空格
3.注釋
注釋塊
與相應(yīng)代碼有著相同縮進(jìn)
行內(nèi)注釋
與代碼被注釋代碼同行,以"#"+""開頭
文檔注釋
結(jié)尾處"""單獨成行
版本注記
模塊文檔字符串之后,所有代碼之前,上下空行分割
4.命名
約定
模塊名:不含下劃線;小寫;剪短
類名,異常名:首字母大寫單詞串
方法,函數(shù):第一個字母小寫的首字母大寫單詞串
屬性,實例,變量:小寫字母串
繼承
私有:雙下劃線開頭
非公有:單下劃線開頭
命名沖突
不降低可讀性,能改就改,不能就在末尾加單個下劃線或者數(shù)字
5.設(shè)計建議
使用"is"或"isnot"進(jìn)行對"None"的單值比較
使用字符串方法代替字符串模塊
使用startswith()和endswith()檢查前后綴而不是使用切片
使用isinstance()判斷對象是否是字符串而不是使用type()
判斷空序列或字典不要使用len()
書寫字符串文字不要依賴有意義的后置空格
不要用"=="比較布爾值
以上內(nèi)容為大家介紹了python代碼的規(guī)范建議,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。http://m.2667701.com/