まず、私はPEP8について完全に認識していますが、時には物事をどのように名付けるべきかについてはあまり明確ではありません。同じベース名を持つPythonモジュール、クラス、インスタンス変数の命名規則は何でしょうか?
ABC
を省略しているとします。
- モジュールは名前を付ける必要があります:モジュール内
abc
- クラスは名前を付ける必要があります:
Abc
またはABC
? (わからない) - インスタンス変数はあなたが
abc
モジュール内の定数を使用している場合は、外部からabc.CONSTANT
を使用してアクセスすることもできますabc
# abc.py
CONSTANT = "foo"
class Abc(object):
pass
# test.py
import abc
print abc.CONSTANT
abc_ = abc.Abc() # oops, if I use `abc` will lose ability to access abc.FOO ?
名前を付ける必要がありますが、あなたも持っている場合同じ名前のインスタンスはクリアされませんか?
この種の問題を解決するきれいな方法がある場合は、頭字語の代わりに単純な言葉を使用すれば、解決策は異なりますか?
注:Abc()
クラスはほとんどの場合、シングルトンとして動作します。そのため、この理由でインスタンスの別の名前を見つけることができませんでした。
通常、1つのモジュールはPythonでは1つのクラスに限定されていないため、すでに名前を付けた問題を避けることができます。より一般的なモジュールで共通のクラスオブジェクトをグループ化してみてください。 Singletonsの場合は – poke
命名規則[className]インスタンスがよく使用されます。例:abcInstance – gecco