PEP8 常用規範

2022-05-17 08:04:06 字數 2606 閱讀 9123

pep8規範 官方文件:

pep8中文翻譯:

4個空格的縮排(編輯器都可以完成此功能),不使用tap,更不能混合使用tap和空格。

換行可以使用反斜槓,最好使用圓括號。換行點要在操作符的後邊敲回車。

1 模組內容的順序:模組說明和docstring—import—globals&constants—其他定義。其中import部分,又按標準、三方和自己編寫順序依次排放,之間空一行。

2 不要在一句import中多個庫,比如import os, sys不推薦。

3 如果採用from xx import xx引用庫,可以省略『module.』,都是可能出現命名衝突,這時就要採用import xx。

from

myclass import myclass

from

foo.bar.yourclass import yourclass

# 如果和本地名字有衝突:

import myclass

import foo.bar.yourclass

1 各種右括號前不要加空格。2 逗號、冒號、分號前不要加空格。

3 函式的左括號前不要加空格。如func( 1)。

4 序列的左括號前不要加空格。如list[2]。

5 操作符左右各加乙個空格,不要為了對齊增加空格。

6 函式預設引數使用的賦值符左右省略空格。

7 不要將多句語句寫在同一行,儘管使用『;』允許。

8 if/for/while語句中,即使執行語句只有一句,也必須另起一行。

# 正確寫法

x = x + 1 # compensate for

border

# 錯誤寫法

x = x + 1 # do nothing

1 編碼中考慮到其他python實現的效率等問題,比如運算子『+』在cpython(python)中效率很高,都是jython中卻非常低,所以應該採用.join()的方式。

2 盡可能使用『is』『is not』取代『==』,比如if x is not none 要優於if x。

3 使用基於類的異常,每個模組或包都有自己的異常類,此異常類繼承自exception。

4 異常中不要使用裸露的except,except後跟具體的exceptions。

5 異常中try的**盡可能少。比如:

try

: value =collection[key]

except

keyerror:

return

key_not_found(key)

else

:

return

handle_value(value)

要優於try

:

return

handle_value(collection[key])

except

keyerror:

#will also catch keyerror raised by handle_value()

return key_not_found(key)

6 使用startswith() and endswith()代替切片進行序列字首或字尾的檢查。比如:

yes: if foo.startswith('bar'):優於

no: if foo[:3] == 'bar':

7 使用isinstance()比較物件的型別。比如

yes: if isinstance(obj, int): 優於

no: if type(obj) is type(1):

8 判斷序列空或不空,有如下規則

yes: if not seq:

if seq:

優於

no: if len(seq)

if not len(seq)

9 . 字串不要以空格收尾。

10 . 二進位制資料判斷使用 if boolvalue的方式。

python 常用PEP8規範

一 編排 1 縮排。4個空格的縮排 編輯器都可以完成此功能 不使用tap,更不能混合使用tap和空格。2 每行最大長度79,換行可以使用反斜槓,最好使用圓括號。換行點要在操作符的後邊敲回車。3 類和top level函式定義之間空兩行 類中的方法定義之間空一行 函式內邏輯無關段落之間空一行 其他地方...

PEP8編碼規範

pep8 python 編碼規範 一 編排 1 縮排。4個空格的縮排 編輯器都可以完成此功能 不使用tap,更不能混合使用tap和空格。2 每行最大長度79,換行可以使用反斜槓,最好使用圓括號。換行點要在操作符的後邊敲回車。3 類和top level函式定義之間空兩行 類中的方法定義之間空一行 函式...

PEP8編碼規範

一 編排 1 縮排。4個空格的縮排 編輯器都可以完成此功能 不使用tap,更不能混合使用tap和空格。2 每行最大長度79,換行可以使用反斜槓,最好使用圓括號。換行點要在操作符的後邊敲回車。3 類和top level函式定義之間空兩行 類中的方法定義之間空一行 函式內邏輯無關段落之間空一行 其他地方...