最近,團隊又來了幾個小伙伴,經過一段時間磨合之后,發現彼此之間還是比較默契的,但有一個很大的問題是,每個人的編程風格和習慣都不同,導致現在代碼看起來非常混亂,

林外要注意:不管你是為了Python就業還是興趣愛好,記住:專案開發經驗永遠是核心,如果你沒有2020最新python入門到高級實戰視頻教程,可以去小編的Python交流.裙 :七衣衣九七七巴而五(數字的諧音)轉換下可以找到了,里面很多新python教程專案,還可以跟老司機交流討教!
所以,有一個統一的開發編碼規范還是很重要的,我在網上搜索了一些資料,在 PEP8 的基礎上,同時結合目前代碼的特點,總結出下文,分享給大家,
代碼布局
縮進
每個縮進級別采用 4 個空格,注意不是 Tab,
當一行超出單行最大長度時,采用 Python 隱式續行,即垂直對齊于圓括號、方括號和花括號,
例如:
# 呼叫函式
foo = long_function_name(var_one, var_two,
var_three, var_four)
# 定義串列
my_list = [
1, 2, 3,
4, 5, 6,
]
# 定義字典
my_dict = {
'a': 'hello',
'b': 'world'
}
復制代碼
每行最大長度
傳統來說一直都是 80,但我覺得以現在的瀏覽器屏寬來說,設定 120 都沒問題,我設定的是 120.
二元運算子前換行
例如:
# 更容易匹配運算子與運算元
income = (gross_wages
+ taxable_interest
+ (dividends - qualified_dividends)
- ira_deduction
- student_loan_interest)
復制代碼
空行
- 使用 1 個空行來分隔類中的方法(method)定義,
- 使用 2 個空行來分隔最外層的函式(function)和類(class)定義,
模塊參考
Imports 應該寫在代碼檔案的開頭,并按照下面這樣的順序參考:
- 標準庫 imports
- 相關第三方 imports
- 本地應用/庫的特定 imports
禁止使用 import * 這樣的方式,
模塊級的雙下劃線命名
模塊中的「雙下滑線」變數,比如 __all__,__author__,__version__ 等,直接寫在檔案開頭,
例如:
"""
This is the example module.
This module does stuff.
"""
from __future__ import barry_as_FLUFL
__all__ = ['a', 'b', 'c']
__version__ = '0.1'
__author__ = 'Cardinal Biggles'
import os
import sys
復制代碼
字串參考
使用單引號來表示字串,對于三引號字串,使用雙引號字符表示,
例如:
# 單引號字串
a = 'hello'
# 三引號字串
"""
這是一個三引號字串
"""
復制代碼
運算式和陳述句中的空格
在下列情形中避免使用過多的空白:
1、方括號,圓括號和花括號之后:
# 正確的例子:
spam(ham[1], {eggs: 2})
# 錯誤的例子:
spam( ham[ 1 ], { eggs: 2 } )
復制代碼
2、逗號,分號或冒號之前:
# 正確的例子:
if x == 4: print x, y; x, y = y, x
# 錯誤的例子:
if x == 4 : print x , y ; x , y = y , x
復制代碼
3、切片操作
# 正確的例子:
ham[1:9], ham[1:9:3], ham[:9:3], ham[1::3], ham[1:9:]
ham[lower:upper], ham[lower:upper:], ham[lower::step]
ham[lower+offset : upper+offset]
ham[: upper_fn(x) : step_fn(x)], ham[:: step_fn(x)]
ham[lower + offset : upper + offset]
# 錯誤的例子:
ham[lower + offset:upper + offset]
ham[1: 9], ham[1 :9], ham[1:9 :3]
ham[lower : : upper]
ham[ : upper]
復制代碼
4、賦值
# 正確的例子:
x = 1
y = 2
long_variable = 3
# 錯誤的例子:
x = 1
y = 2
long_variable = 3
復制代碼
還有一點需要注意的是,一定要把行尾的空格刪掉,
注釋
對代碼進行必要的注釋,如果修改代碼,還要修改對應的注釋內容,
洗掉無用的注釋內容,增加代碼可讀性,
塊注釋
要使用塊注釋,禁止使用行內注釋,注釋時,# 和后面的注釋內容要有空格,
例如:
# 這是一個注釋
x = 1 + 1
復制代碼
不要使用下面的注釋方式:
x = 1 + 1 # 這是一個注釋
復制代碼
TODO 注釋
主要包含以下三點內容:
- 開頭包含「TODO」字串
- 緊跟著是用括號括起來的你的名字或者 email
- 再接下來是冒號,然后寫接下來要做內容的文字解釋
例如:
# TODO(xiaoming): 明確需求之后再開發
復制代碼
檔案字串
對于公共模塊,函式,類和方法,使用檔案字串,內容包括三個方面,分別是功能描述、引數、回傳值,
例如:
class MyClass:
"""
這是一個自定義類
"""
something
def func():
"""
這是一個自定義函式
params:
params1: 第一個引數
params2: 第二個引數
return:
{'data': {}, 'status': 200}
"""
something
復制代碼
命名
1、檔案名
采用小寫字母和下劃線的方式,
例如:
utils.py
mail_lib.py
復制代碼
2、函式名
采用小寫字母和下劃線的方式,
例如:
def func():
pass
def send_mail():
pass
復制代碼
3、類名
采用大駝峰方式,
例如:
class MyClass:
pass
復制代碼
4、常量和變數:
例如:
# 常量
TOTAL
MAX_COUNT
# 變數
total
max_total
復制代碼
最后注意:不管你是為了Python就業還是興趣愛好,記住:專案開發經驗永遠是核心,如果你沒有2020最新python入門到高級實戰視頻教程,可以去小編的Python交流.裙 :七衣衣九七七巴而五(數字的諧音)轉換下可以找到了,里面很多新python教程專案,還可以跟老司機交流討教!
本文的文字及圖片來源于網路加上自己的想法,僅供學習、交流使用,不具有任何商業用途,著作權歸原作者所有,如有問題請及時聯系我們以作處理,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/156847.html
標籤:Python
