前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python中的运算符介绍(上)

Python中的运算符介绍(上)

作者头像
小博测试成长之路
发布2021-10-13 15:30:26
5570
发布2021-10-13 15:30:26
举报
文章被收录于专栏:软件测试学习软件测试学习

今天来介绍一下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

实例演示:

下面考考你

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

逻辑运算符

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

  • and 与(and两边的值都为True时,返回True)
  • or 或 (or两边的值只要有一个为True时,返回True)
  • not 非,(将true变为false,false变为true)

请看具体案例:

代码语言:javascript
复制
print(True and True)    #True
print(True and False)   #False
print(False and False)   #False

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

代码语言:javascript
复制
print(True or False)    #True
print(False or True)   #True
print(False or False)   #False
代码语言:javascript
复制
print(not True)    #False
print(not False)   #True

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

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

赋值运算符

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

代码语言:javascript
复制
a+=b ==> a=a+b
a-=b ==> a=a-b
a*=b ==> a=a*b

三目运算符

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

代码语言:javascript
复制
if a>b:
    max = a
else:
    max = b

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

代码语言:javascript
复制
max = a if a>b else b

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

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

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

稍微复杂点的写法:

代码语言:javascript
复制
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()去判断

代码语言:javascript
复制
a = {"A": "1", "B": "2"}
print('A' in a.keys())
print('a'  in 'abcdefg')

身份运算符

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

代码语言:javascript
复制
a1 = 10
b1 = 2
b1 += 8
print(a1 is b1)  #True


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

a1 = 1
print(a1 is True)   #False
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-10-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小博测试成长之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档