python程式設計通用規範:** 和
**布局空行
用兩行空行分割頂層函式和類的定義,類內方法的定義用單個空行分割。盡量少使用空行在乙個函式內部來分隔邏輯區塊。
空格1. 避免在下面這些情況使用額外的空格。
贊成:spam(ham[1], )反對:spam( ham[ 1 ], )贊成:if x == 4: print x, y; x, y = y, x反對:if x == 4 : print x , y ; x , y = y , x贊成:spam(1)反對:spam (1)贊成:dict['key'] = list[index]反對:dict ['key'] = list [index]
2. 始終在這些二元運算子兩邊放置乙個空格:賦值(=),比較(==、<、>、!=、<>、<=、>=、in、not in、is、is not),布林運算(and、or、not)。始終保持二元運算子兩邊空格的一致。
3. 不要在用於指定關鍵字引數或缺省引數值的'='號周圍使用空格,例如: 示例:def complex(real, imag=0.0):return magic(r=real, i=imag)縮排
4.4個空格乙個縮排層次,現在的ide一般都支援縮排設定,設定成4個空格乙個縮排。並且不要混用製表符和空格。對於新的專案,強烈推薦僅使用空格,注意空格和tab鍵不能混用。
5.行的最大長度:請將所有行限制在最大79字元,摺疊長行的首選方法是使用pyhon支援的圓括號,方括號和花括號內的行延續。如果需要,你可以在表示式周圍增加一對額外的圓括號,但是有時使用反斜槓看起來更好。
6.匯入:一條import語句import乙個模組。 import語句應該放到檔案的頂部,模組注釋後面。 import匯入模組,應該按照如下順序放置: 1.標準庫匯入。 2.相關的第三方模組匯入。 3.本地檔案庫模組匯入。 並且你應該在每一組匯入中間放入乙個空行。
7.分枝和迴圈:盡量不要寫成一行,即便是可以寫成一行的語句。命名規範包
應該是簡短的、小寫的名字。如果下劃線可以改善可讀性可以加入。如mypackage。
8.模組:與包的規範同。如mymodule。
9.類:總是使用首字母大寫單詞串。如myclass。內部類可以使用額外的前導下劃線。
10.函式:函式名應該為小寫,可以用下劃線風格單詞以增加可讀性。如:myfunction,my_example_function。 注意:混合大小寫僅被允許用於這種風格已經佔據優勢的時候,以便保持向後相容。
11.函式和方法引數:總使用「self」作為例項方法的第乙個引數。總使用「cls」作為類方法的第乙個引數。如果乙個函式的引數名稱和保留的關鍵字衝突,通常使用乙個字尾下劃線好於使用縮寫或奇怪的拼寫。
12.全域性變數:對於from m import *匯入語句,如果想阻止匯入模組內的全域性變數可以使用舊有的規範,在全域性變數上加乙個前導的下劃線。變數同方法。如color = white,this_is_a_variable = 1
13.常量:常量名所有字母大寫,由下劃線連線各個單詞如max_overflow,total。
14.異常:以「error」作為字尾。
15.縮寫:命名應當盡量使用全拼寫的單詞,縮寫的情況有如下兩種: 1.常用的縮寫,如xml、id等,在命名時也應只大寫首字母,如xmlparser。 2.命名中含有長單詞,對某個單詞進行縮寫。這時應使用約定成俗的縮寫方式。
16.前導字尾下劃線:乙個前導下劃線:表示非公有。 乙個字尾下劃線:避免關鍵字衝突。 兩個前導下劃線:當命名乙個類屬性引起名稱衝突時使用。 兩個前導和字尾下劃線:「魔」(有特殊用圖)物件或者屬性,例如__init__或者__file__。絕對不要創造這樣的名字,而只是使用它們。 注意:關於下劃線的使用存在一些爭議。
17.注釋格式注釋:所有的python指令碼檔案都應在檔案頭標上# -*- coding:utf-8 -*-。設定編輯器,預設儲存為utf-8格式。塊注釋
注釋塊通常應用於跟隨著一些(或者全部)**並和這些**有著相同的縮排層次。注釋塊中每行以'#'和乙個空格開始。注釋塊上下方最好有一空行包圍。
18.行內注釋:乙個行內注釋是和語句在同一行的注釋。行內注釋應該謹慎適用。行內注釋應該至少用兩個空格和語句分開。它們應該以'#'和單個空格開始。
19.文件注釋:文件字串,又名"docstrings"。應為所有公共模組、類、函式和方法編寫文件字串。文件字串對非公開的方法不是必要的,但你應該有乙個描述這個方法做什麼的注釋,這個注釋應該在"def"這行後。一定注意,多行文件字串結尾的"""應該單獨成行。對單行的文件字串,結尾的"""在同一行也可以。
Python編碼規範
usr bin python 應用程式要定義main函式而不要直接寫指令碼 def main dosomething if name main main 如果是全域性變數,則需要顯式加上 global python 的注釋分為兩種的概念,一種是由 開頭的 真正的 注釋,另一種是 docstrings...
Python編碼規範
usr bin python 應用程式要定義main函式而不要直接寫指令碼 def main dosomething if name main main 如果是全域性變數,則需要顯式加上 global python 的注釋分為兩種的概念,一種是由 開頭的 真正的 注釋,另一種是 docstrings...
python編碼規範
pep8編碼標準 編寫 1,使用4個空格進行退進,不使用tab鍵,不允許tab和空格混用 2,每行最大長度79位元組,超過部分使用反斜槓折行 3,類和全域性函式定義間隔兩個空行,類內方法定義間隔乙個空行,類內方法定義間隔乙個空行,其他地方不加空行 文件編排 1.import 部分按標準,三方和自己編...