每行**盡量不超過 80 個字元(在特殊情況下可以略微超過 80 ,但最長不得超過 120)
理由:簡單說,自然語言使用雙引號,機器標示使用單引號,因此 **裡 多數應該使用 單引號
class a:
def __init__(self):
pass
def hello(self):
pass
def main():
pass
# 正確的寫法
import os
import sys
# 不推薦的寫法
import sys,os
# 正確的寫法
from subprocess import popen, pipe
# 正確的寫法
from foo.bar import bar
# 不推薦的寫法
from ..bar import bar
import os
import sys
import msgpack
import zmq
import foo
from myclass import myclass
import bar
import foo.bar
bar.bar()
foo.bar.bar()
# 正確的寫法
i = i + 1
submitted += 1
x = x * 2 - 1
hypot2 = x * x + y * y
c = (a + b) * (a - b)
# 不推薦的寫法
i=i+1
submitted +=1
x = x*2 - 1
hypot2 = x*x + y*y
c = (a+b) * (a-b)
# 正確的寫法
def complex(real, imag):
pass
# 不推薦的寫法
def complex(real,imag):
pass
# 正確的寫法
def complex(real, imag=0.0):
pass
# 不推薦的寫法
def complex(real, imag = 0.0):
pass
# 正確的寫法
spam(ham[1], )
# 不推薦的寫法
spam( ham[1], )
# 正確的寫法
dict['key'] = list[index]
# 不推薦的寫法
dict ['key'] = list [index]
# 正確的寫法
x = 1
y = 2
long_variable = 3
# 不推薦的寫法
x = 1
y = 2
long_variable = 3
python 支援括號內的換行。這時有兩種情況。
第二行縮排到括號的起始處
foo = long_function_name(var_one, var_two,
var_three, var_four)
第二行縮排 4 個空格,適用於起始括號就換行的情形
def long_function_name(
var_one, var_two, var_three,
var_four):
print(var_one)
使用反斜槓\換行,二元運算子+ .等應出現在行末;長字串也可以用此法換行
session.query(mytable).\
filter_by(id=1).\
one()
print 'hello, '\
'%s %s!' %\
('harry', 'potter')
禁止復合語句,即一行中包含多個語句:
# 正確的寫法
do_first()
do_second()
do_third()
# 不推薦的寫法
do_first();do_second();do_third();
if/for/while一定要換行:
# 正確的寫法
if foo == 'blah':
do_blah_thing()
# 不推薦的寫法
if foo == 'blah': do_blash_thing()
docstring 的規範中最其本的兩點:
所有的公共模組、函式、類、方法,都應該寫 docstring 。私有方法不一定需要,但應該在 def 後提供乙個塊注釋來說明。
docstring 的結束"""應該獨佔一行,除非此 docstring 只有一行。
"""return a foobar
optional plotz says to frobnicate the bizbaz first.
""""""oneline docstring"""
C 編寫規範
c 編寫規範 一 兩種命名風格 1.pascal風格 大駝峰命名法 包含乙個到多個單詞,每個單詞首字母大寫,其餘字母均小寫。例如 helloworld setname等等。2.camel風格小駝峰命名法 包含乙個到多個單詞,第乙個單詞首字母小寫,其餘單詞首字母大寫。例如 name productid...
程式編寫規範
排版 原則 團隊應遵守一致的排版風格 規則1 在不同的概念之間,增加空行。如import與包名,import與類名,方法與方法,類與類,變數宣告與變數宣告。規則2 將邏輯緊密相關的 放在一起。規則3 控制一行的寬度,不要超過120個字元。換行應在低優先順序運算子處換行。規則4 控制一行的寬度,在不同...
javascript編寫規範
變數和函式 變數名應當遵循camel case,並且命名字首應當是名詞。以名詞作為字首可以讓變數和函式區分開來,因為函式名字首應當是動詞。比如 var count 10 var myname nicholas function getname 函式和方法常用單詞 can has is get set...