もう一つ質問があります。
リスト「metainfo」を持つpythonクラスがあります。このリストには、クラスに含まれる可能性のある変数名が含まれています。との両方が同じ変数を持ち、それらの変数が同じ値を持つ__eq__
場合に True を返すメソッドを作成しました。self
other
metainfo
これが私の実装です:
def __eq__(self, other):
for attr in self.metainfo:
try:
ours = getattr(self, attr)
try:
theirs = getattr(other, attr)
if ours != theirs:
return False
except AttributeError:
return False
except AttributeError:
try:
theirs = getattr(other, attr)
return False
except AttributeError:
pass
return True
このコードを見やすくする方法について何か提案はありますか? 好きなだけ冷酷になってください。