Pythonでは、1つのアンダースコアを前に付けると、メンバーはそのクラスの外部からアクセスできなくなります。これは、JavaやC ++のようにクラスごとに基づいているようです。
ただし、pylintはオブジェクトごとにこの規則を適用するようです。に頼らずにクラスごとのアクセスを許可する方法はあり#pylint: disable=protected-access
ますか?
class A:
def __init__(self):
self._b = 5
def __eq__(self, other):
return self._b == other._b
結果:
pylint a.py
a.py:6: W0212(protected-access) Access to a protected member _b of a client class
Pylintはここでメッセージを説明します。
pylintはどの型でother
あるか(どのようにすればAのインスタンスをすべてと比較できるか)を認識しないため、警告が表示されます。警告を無効にする方法はないと思います。
その行に追加# pylint: disable=W0212
して、その1行のみの警告を無効にすることができます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加