Python中的运算符介绍(上)

举报
小博测试成长之路 发表于 2022/01/14 23:03:11 2022/01/14
【摘要】 今天来介绍一下Python中的运算符,运算符主要有以下几类: 算术运算符 比较(关系)运算符 逻辑运算符 赋值运算符 三目运算符 位运算符 成员运算符 身份运算符 接下来,详细的介绍一下运算符的具体操作: 算术运算符 算术运算符用于对整数类型和浮点类型的数据进行相关操作的运算符。 常见的算术运算符以及对应的操作...

今天来介绍一下Python中的运算符,运算符主要有以下几类:

  • 算术运算符

  • 比较(关系)运算符

  • 逻辑运算符

  • 赋值运算符

  • 三目运算符

  • 位运算符

  • 成员运算符

  • 身份运算符

接下来,详细的介绍一下运算符的具体操作:

算术运算符

算术运算符用于对整数类型和浮点类型的数据进行相关操作的运算符。

常见的算术运算符以及对应的操作介绍如下图所见:

图片

如果将True/False用于数值的操作运算的时候,会自动转换为1和0去进行计算。

图片

比较运算符

比较运算符主要用于比较两个表达式的大小,对比的返回结果是True或者False。

运算符 名称 例子 说明
> 大于 a>b a大于b时返回True,否则False
== 等于 a==b a与b相等时返回True,否则False
< 小于 a<b a小于b时返回True,否则False
>= 大于等于 a>=b a大于等于b时返回True,否则False
<= 小于等于 a<=b a小于b时返回True,否则False
!= 不等于 a!=b a与b不相等时返回True,否则False

实例演示:

图片

下面考考你

图片

在python中,以下语句执行结果分别是什么呢?print(1.0 == 1)   ==>Trueprint(1 == True)  ==>Trueprint([2,1]>[1])  ==>Trueprint(['1']>[1]])  ==>运行报错
 

逻辑运算符

逻辑运算符用于对布尔型变量进行运算,其结果也是布尔型。

  • and 与(and两边的值都为True时,返回True)

  • or  或 (or两边的值只要有一个为True时,返回True)

  • not 非,(将true变为false,false变为true)

请看具体案例:

print(True and True)    #Trueprint(True and False)   #Falseprint(False and False)   #False
 

对于 a or b 来说,如果 a 为真,那么值为 a,否则为 b;对于 a and b 来说,如果 a 为真,那么值为 b,否则为 a。​​​​​​​

print(True or False)    #Trueprint(False or True)   #Trueprint(False or False)   #False​​​​​​​
 
print(not True)    #Falseprint(not False)   #True
 

 具体的运行效果如上面脚本所示,要注意的是,像这种逻辑运算符,在运行过程中,采用了类似“短路”的设计,and 和 or操作在运算的时候,如果结果已经确定,就不会再去计算后面的表达式。

比如:True or False ,前面的True已经确定最终返回的结果会为True,就不会再去管or后面去True还是False。总之:and要所有数据都为True才返回True,or只有有一个为True则返回True。

赋值运算符

=是最常见的赋值运算符,比如a=3,就表示将3的值赋值给变量a。其他常见的赋值运算符有:+=、-+、*=、/=、%=、//=、**=等。​​​​​​​

a+=b ==> a=a+ba-=b ==> a=a-ba*=b ==> a=a*b
 

三目运算符

这个一般用在if判断条件中比较常见,比如,求2个数中的最大值,普通的写法如下:​​​​​​​

if a>b:    max = aelse:    max = b
 

python中提供了一个简便的写法,代码看上去简洁很多:

max = a if a>else b
 

python中通过if else的条件判断,可以实现类似java里面的?:三目运算符。

java里面的用法如下:z = x>y ? x-y : x+y;

python里面用法:value1  if 判断条件  else  value2  

稍微复杂点的写法:​​​​​​​

a if a>b else c if c>d else d等价于:a if a>b else ( c if c>d else d )
 

 

成员运算符

  • in :如果在指定的序列中找到值返回True,否则返回False

  • not in :制定的序号中没有找到对应的值则返回True,找到则返回False

成员运算符用的还是比较多的,比如查看某个key是不是在某个字典里面时,可以用 key in dict.keys()去判断​​​​​​​

a = {"A": "1", "B": "2"}print('A' in a.keys())print('a'  in 'abcdefg')
 

身份运算符

is、is not,用来判断两个标识符是否引用的同一个对象​​​​​​​

a1 = 10b1 = 2b1 += 8print(a1 is b1)  #True

s1 = 'abc's2 = '123abc'[3:]print(s1 is s2)  #False
a1 = 1print(a1 is True)   #False​​​​​​​

 

文章来源: xiaobotester.blog.csdn.net,作者:小博测试成长之路,版权归原作者所有,如需转载,请联系作者。

原文链接:xiaobotester.blog.csdn.net/article/details/120619512

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。