Software_Programming_python_relational_keywords
2020-01-07
code conventions
PEP8 8號 python 增強提案
空白
- 使用space 空格來表示縮進,而不要用 tab 制表符
- 和語法相關的每一層縮進都用4個空格來表示
- 每行的字符數不要超過79
- 對于占據多行的長表達式來說,除了首行之外的其余各行都應該在通常的縮進級別之上再加4個空格
- 文件中的函數與類之間應該用兩個空行隔開
- 在同一個類中,各方法之間應該用一個空行隔開
- 在使用下標來獲取列表元素,調用函數或者給關鍵字參數賦值的時候,不要在兩旁添加空格。
- 為變量賦值的時候,賦值符號的左側和右側應該各自協商一個空格,并且只一個就好。
命名風格
- 函數,變量和屬性應該用小寫字母,各單詞之間用下劃線連接 lowercase_underscore.
- 受保護的實例屬性, 應該以單個下劃線開頭, 例如, _leading_underscore.
- 私有的實例屬性,應該以兩個下劃線開頭,例如, __double_leading_underscore.
- 類與異常, 應該以每個單詞首字母大寫的形式命名,例如, CapitalizaedWord.
- 模塊級別的常量,應該以全部采用大寫字母來拼寫,各單詞之間以下劃線相連,例如: ALL_CAPS
- 類中的實例方法(instance method), 應該把首個參數命名為 self, 以表示該對象自身。
- 類方法(class method) 的首個參數命名為 cls,
表達式和語句 “每件事都應該有直白的做法,而且最好只有一種”
- 采用內聯形式的否定詞,而不要把否定次放在整個表達式的前面,例如,應該是 if a is not b 而不是 if not a is b
- 不要通過檢測長度的辦法(if len(someList) == 0 ) 來判斷 somelist 是否為[] 或 “ 等空值, 而是應該采用 if not somelist 這種寫法來判斷,它會假定 : 空值將自動評估為 False
- 檢測 somelist 是否為 [1] 或 'hi' 等非空值時,也應如此, if somelist 語句默認會把非空的值判斷為 True.
- 不要編寫單行的 if 語句, for 循環, while循環及 except 復合語句,而是應該把這些語句分成多行來書寫,以示清晰。
- import 語句在文件的開頭。
- 引入模塊的時候,應該總是使用絕對名稱,而不應該根絕當前模塊的路徑來使用相對名稱,例如,引入bar包中的 foo模塊時,應該完整地寫出 form bar import foo, 而不是簡單地寫成 Import foo
- 如果一定要以相對名稱來編寫import 語句,就采用明確的寫法: from . import foo
- 文件中的那些 import 語句應該按順序劃分成三個部分,分別表示 標準庫模塊,第三方模塊以及自用模塊。在每一部分中,各import 語句應該按模塊的字母順序來排列

浙公網安備 33010602011771號