Pythonの命名法
スポンサーリンク
開発でPythonを使ってみようと思いコーディングをするときの命名方法について調べた。 Googleでは次のような感じで命名しているのでこれを参考にしたいと思う。
http://google-styleguide.googlecode.com/svn/trunk/pyguide.html
命名規則
避けるべき名前
- カウンタやイテレータ以外の1文字の名前
- パッケージ、モジュール名の中のハイフン(-)
- __double_leading_and_trailing_underscore__2重アンダーライン(Pythonで予約されている)
一般的な名前
- “Internal”はモジュールの内部もしくはプロテクト、プライベートクラスを意味する。
- 一つののアンダーライン(_)は、モジュール変数や関数の保護することをサポートしている。インスタンス変数や関するの前の二つのアンダーライン(__)は変数やメソッドをプライベートにする。
- モジュール中に関係するクラスとトップレベルの関数を置く。Javaに似ておらず、モジュールあたり一つのクラスであることを制限する必要はない。
- クラス名のためにCapWordsを使うと、lower_with_under.pyのモジュール名となる。たくさんの存在するモジュール(CapWords)がある。クラス名の後にモジュールの名前がつけられたら混乱するからである。(wait -- did I write import StringIO or from StringIO import StringIO?)
タイプ | パブリック | 内部 |
---|---|---|
Packages | lower_with_under | |
Modules | lower_with_under | _lower_with_under |
Classes | CapWords | _CapWords |
Exceptions | CapWords | |
Functions | lower_with_under() | _lower_with_under() |
Global/Class Constants | CAPS_WITH_UNDER | _CAPS_WITH_UNDER |
Global/Class Variables | lower_with_under | _lower_with_under |
Instance Variables | lower_with_under | _lower_with_under (protected) or __lower_with_under (private) |
Method Names | lower_with_under() | _lower_with_under() (protected) or __lower_with_under() (private) |
Function/Method Parameters | lower_with_under | |
Local Variables | lower_with_under |