QiitaでRuby版の記事を見かけたので,Pythonでも作ってみました。
ソースコード
>>> class Test:
def __eq__(self, foo):
return True
>>> a = Test()
>>> if a==1 and a==2 and a==3:
print('Hello Qiita')
Hello Qiita
>>>
ポイント(?)
作るにあたって,少し学んだことがあったのでメモしておきます。
###==
演算子について
Pythonでは,==
演算子は__eq__
メソッドで定義されています。もし,定義されていない場合,==
はis
と同じ扱いになります。
>>>class Test2:
pass
>>> b = Test2()
>>> c = Test2()
>>> d = b
>>> b == c
False
>>> b == b
True
>>> b is b
True
>>> b == d
True
>>> b is d
True