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

“ is”运算符在Python中做什么?

“ is”运算符在Python中做什么?

你错过了这is not一个操作符

如果不使用is,则常规not运算符将返回一个布尔值:

>>> not None
True

not None因此是的反布尔“值” None。在布尔上下文中None为false:

>>> bool(None)
False

not None布尔值也是如此True

两者NoneTrue有对象了,而且都有一个内存地址(该值id()cpython的Python实现收益):

>>> id(True)
4440103488
>>> id(not None)
4440103488
>>> id(None)
4440184448

is测试两个引用是否指向 同一对象 ; 如果某物是同一对象,那么它也将具有相同的对象id()is返回一个布尔值,TrueFalse

is notis运算符的逆数。not (op1 is op2)一个运算符中,它等于。它应该 被理解为op1 is (not op2)在这里

>>> 1 is not None     # is 1 a different object from None?
True
>>> 1 is (not None)   # is 1 the same object as True?
False
python 2022/1/1 18:38:47 有255人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

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

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

请先登录

推荐问题


联系我
置顶