def __f():
print 1
def _f():
print 1
インポートを試みましたが、アクセス可能です:
>>> import test1
>>> test1._f()
1
それは何か意味がありますか?クラスベースではないヘルパー関数を書きたいと思っています。次に、特定の低レベルの具体的な関数を非表示にして、ユーザーが使用できる高レベルの関数 (API として表示) のみを残します。
例えば:
test1.copy() は、同じファイル内で追加のチェックを行う別のヘルパー関数を呼び出しますが、それをユーザーに公開したくありません。