Python基础——第六章 逻辑运算

首先,我们先来思考下,如何判断两个对象相同呢?

>>> a=1
>>> b=1
>>> c=2
>>> a == b  #a和b的值是相等的,所以返回True
True
>>> a == c  #a和c的值是不相等的,所以返回False
False
>>> 3 == 3.0
True

#查看下a、b、c三者的IP地址
>>> id(a)
503034944
>>> id(b)  #a和b的内存地址是一样的
503034944
>>> id(c)
503034976

>>> id(3)
503035008
>>> id(3.0)  #3和3.0的地址也是一样的
29956688

从上面程序可看出,“==”判断的是数值,只要数值一样就返回True,即使内存地址不同

目录

1、逻辑运算符——and、or、not

2、运算符优先级

2.1、身份运算符

 2.2、成员运算符


1、逻辑运算符——and、or、not

and 两个条件都要成立

or 只有一个条件成立就可以

not 不成立

其中,not、and优先级是高于or的


>>> 1==1 and 1==2  #因1不等于2,所以返回False
False
>>> 1==1 or 1==2
True
>>> not 1==2
True
>>> not 1==1
False

查看对象类型

type(object) 查看object的类型

isinstance(object,对象类型)判断object是不是指定的类型

>>> a =1
>>> b='hello'
>>> isinstance(a,int) #判断a是不是整数
True
>>> isinstance(b,int) #判断b是不是整数
False

2、运算符优先级

运算符

描述

+、-、/、*

算术运算符

**、%、//

<、>、<=、>=

比较运算符

==、!=

=、/=、-=、+=、*=、

赋值运算符

%=、**=、//=

is、is not

身份运算符

in、not in

成员运算符

not > and > or

逻辑运算符

2.1、身份运算符

is判断是内存地址而非数值

#身份运算符

>>> a = 1
>>> b = 1
>>> a is b
True

>>> a = [1,2,3]
>>> b = [1,2,3]
>>> a is b         #is判断的是内存地址
False
>>> id(a)
55078856
>>> id(b)
29945288

>>> a is not b
True

 2.2、成员运算符

>>> a=[1,2,3]
>>> 3 in a
True
>>> 5 not in a
True

猜你喜欢

转载自blog.csdn.net/weixin_44435602/article/details/114580453