学Python的漫画漫步进阶 -- 第四步.运算符
四、运算符
我们在第3章重点学习了Python的数字类型,有了数据,我们就可以通过运算符把它们连接起来,形成表达式,进而通过表达式进行运算,最后返回一个结果。
4.1 算术运算符
算术运算符用于组织整数类型和浮点类型的数据,有一元运算符和二元运算符之分。
一元算术运算符有两个:+(正号)和-(负号),例如:+a还是a,-a是对a的取反运算。
二元算术运算符如右表所示。
动动手
我们在Python Shell中运行代码,看看运行结果怎样。
4.2 比较运算符
比较运算符用于比较两个表达式的大小,其结果是布尔类型的数据,即True或False。
动动手
我们在Python Shell中运行代码,看看运行结果怎样。
动动手
我们在Python Shell中运行代码,看看运行结果怎样。
4.3 逻辑运算符
逻辑运算符用于对布尔型变量进行运算,其结果也是布尔型。
动动手
我们在Python Shell中运行代码,看看运行结果怎样。
4.4 位运算符
位运算是以二进位(bit)为单位进行运算的,操作数和结果都是整数类型的数据。
动动手
我们在Python Shell中运行代码,看看运行结果怎样。
4.5 赋值运算符
动动手
4.6 运算符的优先级
动动手
4.7 练一练
1 设有变量赋值x=3.5;y=4.6;z=5.7,则以下表达式中值为True的是()。
A.x>y or x>z
B.x!=y
C.z>y+x
D.x<y and not(x>z)
2 下列关于使用“<<”和“>>”操作符,结果正确的是()。
A.0b10100>>4的结果是1
B.0b10100>>4的结果是2
C.0b0000101<<2的结果是20
D.0b0000101<<2的结果是10
3 下列表达式中哪两个相等?()
A.16>>2 B.16/2**2 C.16*4 D.16<<2
4 下列关于运算符优先级描述正确的是().
A.算术运算符→赋值运算符→关系运算符,依次从高到低
B.算术运算符→关系运算符→赋值运算符,依次从高到低
C.关系运算符→赋值运算符→算术运算符,依次从高到低
D.关系运算符→算术运算符→赋值运算符,依次从高到低
4.8 运算符的总结
Python编程语言提供了多种运算符,用于执行各种数学和逻辑操作。以下是关于Python中运算符的一些总结:
-
算术运算符:
- 加法运算符:+
- 减法运算符:-
- 乘法运算符:*
- 除法运算符:/
- 取余运算符:%
- 幂运算符:**
- 整除运算符://
-
赋值运算符:
- 简单的赋值运算符:=
- 加法赋值运算符:+=
- 减法赋值运算符:-=
- 乘法赋值运算符:*=
- 除法赋值运算符:/=
- 取余赋值运算符:%=
- 幂赋值运算符:**=
- 整除赋值运算符://=
-
比较运算符:
- 等于运算符:==
- 不等于运算符:!=
- 大于运算符:>
- 小于运算符:<
- 大于等于运算符:>=
- 小于等于运算符:<=
-
逻辑运算符:
- 与运算符:and
- 或运算符:or
- 非运算符:not
-
位运算符:
- 按位与运算符:&
- 按位或运算符:|
- 按位异或运算符:^
- 按位取反运算符:~
- 左移运算符:<<
- 右移运算符:>>
-
成员运算符:
- 在内运算符:in
- 不在内运算符:not in
-
身份运算符:
- 等于运算符:is
- 不等于运算符:is not
-
其他运算符:
- 字符串格式化运算符:% 和 .format() 方法以及f-string(Python 3.6+)用于字符串格式化。
- 类型转换运算符:int()、float()、str() 等用于将值转换为特定类型。
-
优先级和结合性:
Python中的运算符具有不同的优先级和结合性。例如,算术运算符通常具有比比较运算符更高的优先级,而比较运算符又具有比逻辑运算符更高的优先级。此外,大多数运算符从左到右进行结合,但某些运算符(如指数运算)从右到左进行结合。可以通过使用括号来覆盖默认的结合性和优先级。