python 中的 ==

我们不管在学习哪种语言的时候,都会遇见==,它是验证等号两端的数据是否相等的符号,如果相等返回True,不相等就返回False。但是,我们在学习跑Python的过程中,不要总是认为成立就返回True,不成立就返回False。下面我来举个例子,刷新一下大家对==的认识。

>>> a=1
>>> b=2
>>> a==b
False
>>> a=1
>>> b="a"
>>> a==b
False
>>> class A(object):
    def __eq__(self,other):
        return False


>>> a=A()
>>> a==a
False
>>> a==1
False

看到上面的例子了吗?不管怎么比较,都会返回False,这是因为我们重写了eq魔法方法,我们就绕过它原来的语法,自己定义返回值。
可能会有人说,这有什么用吗?我们就是想让==来判断相等或者不等,干嘛还要重写它的eq方法呢?这里呢,我不做过多解释,请看我下一篇博文,我会告诉大家什么情况下会用到重写eq方法。

猜你喜欢

转载自blog.csdn.net/weixin_40612082/article/details/81157202