Python成员运算符和身份运算符

2025-05-25 18:57:26

Python有两个运算符,在其他语言中可能没有见过。一个成员运算符,一个是身份运算符。

一.成员运算符

1、首先看“in”.意思是,如果在指定的序列中找到了,那么结果是True,如果没有找到,那么结果是False.

2、看如下代码,我们创建了一个L列表,然后创建了一个变量为3.然后,a是否在L中。

Python成员运算符和身份运算符

3、结果如下,3确实在L中,所以返回True.

Python成员运算符和身份运算符

4、我们把a的值设置为20,在运行一下,返回的值就是False。

Python成员运算符和身份运算符
Python成员运算符和身份运算符

5、再看另一个,not in。和in是相反的,如果在指定的序列中没有找到值返回True,找到了返回False.

6、如下图所示,将in改成not in。返回值就是True了。

Python成员运算符和身份运算符
Python成员运算符和身份运算符

二.身份运算符

1、身份运算符用于比较2个对象的存储单元。包括:is ,not is.我们先说is

2、is用于判断2个标识符的引用是否一样。如下图所示,a和b的引用是一样的,有点类似于ID是否一样。

Python成员运算符和身份运算符

3、所以,执行的结果是True,ID也都是一样的

Python成员运算符和身份运算符

4、现在,将代码改成如下模式

Python成员运算符和身份运算符

5、可以发现,返回的是False,ID值也不一样了。

Python成员运算符和身份运算符

6、这是因为Python和其他语言的处理方式可能不一样。比如C语言,如果创建一个变量a,那么a本身是指向一个内存空间的。如果我执行了a=a+1,那么a执行的内存空间里的值会变化,然后将这个地记醋弭床址再赋值给a。

7、但Python不同,对Python来说,数值和字符串是不可变的对象。如果对这个对象进行+1操作,那么结果就是会得到一个新的对象。如下图所示,a的id值发生了变化。

Python成员运算符和身份运算符
Python成员运算符和身份运算符
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢