PEP8-Python編程規範
阿新 • • 發佈:2017-05-08
大寫 全局 劃線 相對路徑 兩個 name arguments cti ==
程序代碼是用來讀的, 提高代碼可讀性需要掌握PEP8代碼規範
這需要堅持一致性考慮
1 關於空格
縮進使用4空格
括號換行時, 有三種範例可以遵守
# 對準左括號 foo = long_function_name(var_one, var_two, var_three, var_four) # 不對準左括號,但加多一層縮進,以和後面內容區別。 def long_function_name( var_one, var_two, var_three, var_four): print(var_one) # 懸掛縮進必須加多一層縮進. foo = long_function_name( var_one, var_two, var_three, var_four)
右括號回退
# 右括號回退
my_list = [
1, 2, 3,
4, 5, 6,
]
result = some_function_that_takes_arguments(
‘a‘, ‘b‘, ‘c‘,
‘d‘, ‘e‘, ‘f‘,
)
一行最多72個字符, 超過之後需要換行
括號與括號內容之間不應該有空格
# 括號裏邊避免空格
# 推薦
spam(ham[1], {eggs: 2})
# 不推薦
spam( ham[ 1 ], { eggs: 2 } )
逗號, 冒號, 分號分割數據的時候應該緊跟左邊的內容, 與右邊內容之間加一個空格
# 逗號,冒號,分號之前避免空格
# Yes
if x == 4: print x, y; x, y = y, x
# No
if x == 4 : print x , y ; x , y = y , x
索引的冒號之間不應搞有空格
二元運算符, =, +=, -=, ... and, or等前後有要有空格
+. -前後要有空格, *, / 前後不應該有空格
函數定義的參數列表, 每個參數之間用逗號分隔, 前面不加空格, 後面加空格
函數定義的參數列表中的默認參數的=前後不應該有空格
類似if/else等後面加冒號後面跟程序塊的, 不要和if/else寫在一行
註釋#後面加一個空格
2 關於換行
在類中, 類名和第一個函數間隔2行
在類中, 類中的函數之間間隔1行
3 關於導入
單獨的import後面最好是單個
from..import可以不是單個
推薦是用絕對路徑導入, 不推薦使用相對路徑導入
盡量避免通配符導入, 如盡量少使用*
4 關於命名
模塊名全部使用小寫字母, 使用下劃線來增加可讀性
包的命名和模塊差不多, 但是包最好不要用下劃線
類名, 首字母大寫, 采用駝峰寫法
函數名, 全部使用小寫字母
全局變量, 全部是用大寫字母, 可以使用下劃線來增加可讀性
私有變量, 變量名字前面加上一個下劃線
特殊變量. 變量名字前後都加上兩個下劃線
PEP8-Python編程規範