「关注我,和我一起放下灵魂,让灵魂去搬砖。」
Python运算符
Python版本:3.8.0,开发工具:Pycharm
Python运算符主要分为算术运算符、比较(关系)运算符、赋值运算符、逻辑运算符、成员运算符、身份运算符、位运算符
1. 算术运算符
- 普通算术运算符
+ - * / :加减乘除
- 特殊算术运算符
- 取模(余) :%,返回除法的余数
- 幂:**, 返回x的y次幂
- 取整://, 返回商的整数部分(向下取整)
5%2 #输出结果是1
2%10 #输出结果是0
2**3 #输出结果是8
11//2 #输出结果5
-7//2 #输出结果4
2. Python比较运算符
比较结果为布尔值,布尔值(Boolean Value)用 True 和 False 来表示。区分大小写
- 等于: ==,比较两个对象是否相等
- 不等于: !=,比较两个对象是否不相等
- 大于: >,返回x是否大于y
- 小于: <, 返回x是否小于y
- 大于等于: >=,返回x是否大于等于y
- 小于等于: <=,返回x是否小于等于y
1==2 #输出结果False
1!=2 #输出结果是True
1>2 #输出结果False
1<2 #输出结果True
1>=2 #输出结果False
1<=2 #输出结果True
3. 赋值运算符
- =, 直接赋值
- 加法赋值:+=, y += x相当于 y = y+x
- 减法赋值:-=, y -= x相当于 y = y-x
- 乘法赋值:*=, y *= x相当于 y = y * x
- 除法赋值:/=, y /= x相当于 y = y/x
- 取模赋值:%=, y %= x相当于 y = y%x
- 幂赋值:**=, y **= x相当于 y = y ** x
- 取整赋值://=, y //= x相当于 y = y+x
- 海象赋值::=, n:=len(a) 对n进行赋值,可在表达式内部使用
x=2, y=5
y += x #输出结果y=7
y -= x #输出结果y=3
y *= x #输出结果y=10
y /= x #输出结果y=2
y %= x #输出结果y=1
y **= x #输出结果y=25
y //= x #输出结果y=2
print(y:=len([1,2,3,4,5]) #输出5
4.逻辑运算符
- 与:and,如果x为0/False,x and y 返回0/False,否则它返回y的计算值
- 或:or,如果x是非0或非False,它返回x的值,否则它返回y的计算值。
- 非:not, 如果x为True,返回False ;如果x为False,它返回True
False and 2 #输出结果是False
1 and 2 #输出结果是3
False or 3 #输出结果是3
1 or 3 #输出结果是1
not 1 #输出结果是False
not 0 #输出结果是True
5. 成员运算符
- in:如果在指定的序列中找到值返回 True,否则返回 False。
- not in:如果在指定的序列中没有找到值返回 True,否则返回 False。
'a' in 'basic' #输出结果True
1 not in [1,2,3,4,5] #输出结果False
6. 身份运算符
- is:判断两个标识符是不是引用自一个对象
- not is:判断两个标识符是不是引用自不同对象
x=10,y=10
x is y #输出结果True
x is not y #输出结果False
注:is 用于判断两个变量引用对象是否为同一个(同一块内存空间),
== 用于判断引用变量的值是否相等。
7.位运算符
- 按位与:&,参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0
- 按位或:|,只要对应的二个二进位有一个为1时,结果位就为1。
- 按位异或:^,当两对应的二进位相异时,结果为1
- 按位取反:~,对数据的每个二进制位取反,即把1变为0,把0变为1
- 左移:y<<x,把y的各二进位全部左移x位。移位时高位丢弃,低位补0
- 右移:y>>x,把y的各二进位全部右移x位。
x = 3 # 3 = 0000 0011
y = 5 # 5 = 0000 0101
z = 0
z = x & y # z = 0000 0001 输出结果z=1
z = x | y # z = 0000 0111 输出结果z=7
z = x ^ y # z = 0000 0110 输出结果z=6
z = ~x # z = 1111 1100 输出结果z=-4
z = y << x # z = 0010 1000 输出结果40
z = y >> x # z = 0000 0000 输出结果0
注:左移相当于乘以x个2,即 y* 2* 2* 2=40,右移同理
8. 运算符优先级(由高到低)
** 幂 (最高优先级)
~ 按位取反
* / % // 乘,除,取模,取整
+ - 加法,减法
>> << 右移,左移
& 按位与
^ | 按位异或、按位或
<= < > >= 比较运算符
<> == != 等于运算符
= %= /= //= -= += *= **= 赋值运算符
is/is not 身份运算符
in/not in 成员运算符
not/and/or 逻辑运算符
在Python做数据清洗的过程中,除位运算符外其他运算符均会高频使用,特别是逻辑、成员和身份运算符,合理使用会事半功倍!
下节将介绍Python六大数据类型
Python系列
Python系列会持续更新,从基础入门到进阶技巧,从编程语法到项目实战。若您在阅读的过程中发现文章存在错误,烦请指正,非常感谢;若您在阅读的过程中能有所收获,欢迎一起分享交流。
如果你也想和我一起学习Python,可以关注我的微信公众号
学习Python,我们不只是说说而已