您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python的首选比较运算符

Python的首选比较运算符

x is y 与有所不同x == y

x is y当且仅当id(x) == id(y)-即 xy必须是一个相同的对象(具有ids)时才为true 。

对于所有内置的Python对象(如字符串,列表,字典,函数等),如果x is y,则x == y也为True。但是,通常不能保证这一点。严格来说,x == y当且仅当x.__eq__(y)返回True时,才为true 。

例如,可以使用始终返回Falsex__eq__方法来定义对象,并且x == y即使也会导致返回False x is y

所以最重要的是,x is y 而且 x == y完全是不同的测试。

考虑以下示例:

In [1]: 0 is False
Out[1]: False

In [2]: 0 == False
Out[2]: True

PS。代替

if x is y:
    return True
else:
    return False

写起来更Python化

return x is y

同样,

if x == y:
    return True
else:
    return False

可以替换为

return x == y
python 2022/1/1 18:35:58 有227人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶