我需要在受限范围内对对象进行自定义比较,有没有办法做到这一点并且不会污染操作员,例如之后恢复以前的eq?
class Test():
def __eq__(self, i):
print "eq lvl 1"
def test(a , b):
def _itest(i):
print "eq lvl 2"
>>> a = Test()
>>> b = Test()
>>> a == b
eq lvl 1
>>> test(a, b)
>>> a == b
Traceback (most recent call last):
File "<console>", line 1, in <module>
TypeError: _itest() takes exactly 1 argument (2 given)
我这样做是因为在某些条件下我需要降低eq运算符。
注意:我想重写__eq__
以使用该in
语句。