來自C#背景,變量和方法名稱的命名約定一般是camelCase或PascalCase: python
// C# example string thisIsMyVariable = "a" public void ThisIsMyMethod()
在Python中,我已經看到了上面的內容,但我也看到了使用下劃線: ide
# python example this_is_my_variable = 'a' def this_is_my_function():
Python有更優選的,明確的編碼風格嗎? 函數
請參閱Python PEP 8 。 this
函數名稱應爲小寫,並根據須要用下劃線分隔,以提升可讀性。 編碼
只有在已經成爲流行風格的情境中才容許使用mixedCase spa
變量... code
使用函數命名規則:小寫,必要時用下劃線分隔,以提升可讀性。 索引
就我的而言,我與此不一樣,由於我也喜歡mixedCase
在lower_case
爲我本身的項目。 開發
編碼風格一般是組織內部策略/約定標準的一部分,但我認爲一般,all_lower_case_underscore_separator樣式(也稱爲snake_case)在python中最多見。 underscore
正如其餘答案所示,有PEP 8 ,但PEP 8只是標準庫的樣式指南,而且它僅做爲福音。 PEP 8對其餘代碼的最多見誤差之一是變量命名,特別是對於方法。 沒有單一的主導風格,雖然考慮到使用mixedCase的代碼量,若是要進行嚴格的人口普查,最終可能會獲得一個帶有mixedCase的PEP 8版本。 PEP 8幾乎沒有其餘誤差,這很常見。
大多數python人喜歡下劃線,但即便我使用python已經超過5年了,我仍然不喜歡它們。 他們看起來很難看,但也許這就是我頭腦中的Java。
我更喜歡CamelCase,由於它更符合類的命名方式。讓SomeClass.doSomething()
比SomeClass.do_something()
更合乎邏輯。 若是你在python中查看全局模塊索引,你會發現二者,這是由於它是來自各類來源的庫的集合,這些庫隨着時間的推移而增加,而不是像Sun這樣的公司用嚴格的編碼規則開發的東西。 。 我會說底線是:使用你喜歡的任何東西,這只是我的品味的問題。
我我的嘗試將CamelCase用於類,mixedCase方法和函數。 變量一般是下劃線(當我記得時)。 經過這種方式,我能夠一目瞭然地告訴我到底是在呼喚什麼,而不是一切看起來都同樣。