モジュール内で、ユーザーが呼び出してはならないヘルパー関数を示すために、1 つ、2 つ、またはまったくアンダースコアを使用する必要がありますか?
質問する
4080 次
2 に答える
8
PEP-8 (Python スタイル ガイド) では、先頭に単一のアンダースコアを使用することを提案しています。
先頭または末尾にアンダースコアを使用する次の特殊な形式が認識されます (これらは通常、大文字と小文字の規則と組み合わせることができます)。
_single_leading_underscore
: 弱い「内部使用」指標。たとえばfrom M import *
、名前がアンダースコアで始まるオブジェクトはインポートされません。- ...
于 2013-05-02T21:43:43.977 に答える
2
おそらく単一のアンダースコアですが、状況によって異なります。
具体的には、Python スタイル ガイド (PEP 8) には次のように書かれています。
_single_leading_underscore: 弱い「内部使用」指標。たとえば from M import * は、名前がアンダースコアで始まるオブジェクトをインポートしません。
__double_leading_underscore: クラス属性に名前を付けるときに、名前マングリングを呼び出します (クラス FooBar 内では、__boo は _FooBar__boo になります。以下を参照してください)。
より長い回答については、この質問も参照してください: オブジェクト名の前の単一アンダースコアと二重アンダースコアの意味は何ですか?
于 2013-05-02T21:47:45.280 に答える