2008-12-10 57 views
108

在python中,你通常使用PEP 8 -- Style Guide for Python Code作爲編碼標準/指南嗎?您還有其他任何正式標準嗎?Python編碼標準/最佳實踐

+1

//首先,「觀衆偏好」的兜售看起來似乎毫無害處,但它卻將計算機轉變爲投票機制,這是少數人反對多數人的一種歪曲的民主。 「你還有其他什麼?」字面上,是要求他們有偏好,而不是事實。 – 2015-06-11 08:42:10

回答

1

是的,我嘗試儘可能地遵循它。

我不遵循任何其他編碼標準。

3

我非常嚴格地遵循它。 PEP-8之前唯一的神是現有的代碼庫。

+1

,我會注意到PEP-8甚至考慮到現有的代碼庫。 – 2008-12-13 04:09:27

4

PEP 8是好的,我希望它下來更難上是標籤-VS-空間聖戰的唯一的事情。

基本上,如果你在python中開始一個項目,你需要選擇Tabs或Spaces,然後拍攝所有罪犯。

+4

製表符或空格? 從PEP8開始:空格是首選的縮進方法。 選項卡應完全用於與已用選項卡縮進的代碼保持一致。 – 2014-04-08 16:41:22

+0

//,PEP8很清楚,空格是首選的縮進方法,Ryan。 Downvoted。但是會更新答案嗎? – 2015-06-11 05:12:40

5

爲了增加慣用指南bhadra'slist

結帳安東尼巴克斯特的表現上Effective Python Programming(從2005年OSON)。

的摘錄:

# dict's setdefault method turns this: 
if key in dictobj: 
    dictobj[key].append(val) 
else: 
    dictobj[key] = [val] 
# into this: 
dictobj.setdefault(key,[]).append(val) 
8

我堅持PEP-8非常緊密。

有三個具體的事情,我不能改變爲PEP-8。

  • 立即避免在括號,括號或大括號內的無關空格。

    建議:spam(ham[1], {eggs: 2})

    我這樣做呢:spam(ham[ 1 ], { eggs: 2 })

    爲什麼?30年以上的根深蒂固的習慣是依靠()與功能名稱或(C)語句中的關鍵字相關聯。從70年代的Fortran IV開始。

  • 各地使用算術運算符空間:

    建議:x = x * 2 - 1

    我這樣做呢:x= x * 2 - 1

    爲什麼?格里斯的「編程科學」認爲這是強調賦值與狀態變化的變量之間的聯繫的一種方式。

    對於多次賦值或增強賦值,這不適用,因爲我使用了大量空格。

  • 對於函數名,方法名和實例變量名

    建議:小寫,根據需要,以提高可讀性下劃線分隔單詞。

    無論如何我都這麼做:camelCase

    爲什麼?從20世紀80年代的Pascal開始,駱駝起源於20多年的根深蒂固的習慣。

1

我遵循PEP8,它是一種很棒的編碼風格。