Python命名約定基本內容解析
在我們學習Python編碼規范的過程中,其中命名約定是一個比較重要的知識點。我們需要對這方面的知識有一個充分的認知。在這里我們就會針對Python命名約定的相關內容做一個系統的講解。#t#
Python命名約定之模塊名
模塊應該是不含下劃線的,簡短的,小寫的名字。因為模塊名被映射到文件名,有些文件系統大小寫不敏感并且截短長名字,模塊名被選為相當短是重要的,這在Unix上不是問題,但當代碼傳到Mac或Windows上就可能是個問題了。
當用C或C++編寫的擴展模塊有一個伴隨Python模塊提供高層(例如進一步的面向對象)接口時,C/C++模塊有下劃線前導(如:_socket)。Python包應該是不含下劃線的,簡短的,全小寫的名字。
Python命名約定之類名
幾乎不出意料,類名使用CapWords約定。內部使用的類外加一個前導下劃線。
Python命名約定之異常名
如果模塊對所有情況定義了單個異常,它通常被叫做“error”或“Error”。似乎內建(擴展)的模塊使用“error”(例如:os.error),而Python模塊通常用“Error” (例如:xdrlib.Error)。趨勢似乎是傾向使用CapWords異常名。
Python命名約定之全局變量名
(讓我們祈禱這些變量僅在一個模塊的內部有意義)
這些約定和在函數中的一樣。模塊是被設計為通過“from M import *”來使用的,必須用一個下劃線作全局變量(及內部函數和類)的前綴防止其被導出(exporting)。
Python命名約定之函數名
函數名應該為小寫,可能用下劃線風格單詞以增加可讀性。mixedCase僅被允許用于這種風格已經占優勢的上下文(如:threading.py),以便保持向后兼容。
方法名和實例變量
這段大體上和函數相同:通常使用小寫單詞,必要時用下劃線分隔增加可讀性。僅為不打算作為類的公共界面的內部方法和實例使用一個前導下劃線,Python不強制要求這樣:它取決于程序員是否遵守這個約定。
使用兩個前導下劃線以表示類私有的名字,Python將這些名字和類名連接在一起:
如果類Foo有一個屬性名為_a,它不能以Foo._a訪問。(固執的用戶還是可以通過Foo._Foo__a得到訪問權。)
通常雙前導下劃線僅被用于避免含子類的類中的屬性名的名字沖突。