当涉及到编写Python程序时,运算符是非常重要的组成部分之一。Python提供了多种运算符,用于执行各种数学和逻辑运算。本篇文章将介绍Python的各种运算符及其使用方法,并提供使用案例。
一、算术运算符
算术运算符用于执行基本的数学运算。
运算符 | 描述 |
---|---|
+ | 加 |
- | 减 |
* | 乘 |
/ | 除 |
// | 整除 |
% | 取余 |
** | 指数 |
注意 | 混合运算优先级顺序: () ⾼于 ** ⾼于 * / // % ⾼于 + - |
1.1 加法运算符(+):将两个数相加。
a = 10
b = 5
result = a + b
print(result) # 输出:15
1.2 减法运算符(-):从第一个数中减去第二个数。
a = 10
b = 5
result = a - b
print(result) # 输出:5
1.3 乘法运算符(*):将两个数相乘。
a = 10
b = 5
result = a * b
print(result) # 输出:50
1.4 除法运算符(/):将第一个数除以第二个数。
a = 10
b = 5
result = a / b
print(result) # 输出:2.0
1.5 取模运算符(%):获取两个数相除的余数。
a = 10
b = 3
result = a % b
print(result) # 输出:1
1.6 幂运算符(**):计算一个数的幂次方。
a = 2
b = 3
result = a ** b
print(result) # 输出:8
1.7 取整除运算符(//):获取两个数相除的整数部分。
a = 10
b = 3
result = a // b
print(result) # 输出:3
二、比较运算符
比较运算符用于比较两个值之间的关系。
运算符 | 描述 |
---|---|
== | 判断相等。如果两个操作数的结果相等,则条件结果为真(True),否则条件结果为假(False) |
!= | 不等于 。如果两个操作数的结果不相等,则条件为真(True),否则条件结果为假(False) |
> | 运算符左侧操作数结果是否⼤于右侧操作数结果,如果⼤于,则条件为真,否则为假 |
< | 运算符左侧操作数结果是否⼩于右侧操作数结果,如果⼩于,则条件为真,否则为假 |
>= | 运算符左侧操作数结果是否⼤于等于右侧操作数结果,如果⼤于,则条件为真,否则为假 |
<= | 运算符左侧操作数结果是否⼩于等于右侧操作数结果,如果⼩于,则条件为真,否则为假 |
2.1 相等运算符(==):检查两个值是否相等。
a = 5
b = 5
result = a == b
print(result) # 输出:True
2.2 不等运算符(!=):检查两个值是否不相等。
a = 5
b = 3
result = a != b
print(result) # 输出:True
2.3 大于运算符(>):检查第一个值是否大于第二个值。
a = 5
b = 3
result = a > b
print(result) # 输出:True
2.4 小于运算符(<):检查第一个值是否小于第二个值。
a = 5
b = 3
result = a < b
print(result) # 输出:False
2.5 大于等于运算符(>=):检查第一个值是否大于等于第二个值。
a = 5
b = 5
result = a >= b
print(result) # 输出:True
2.6 小于等于运算符(<=):检查第一个值是否小于等于第二个值。
a = 5
b = 3
result = a <= b
print(result) # 输出:False
三、逻辑运算符
逻辑运算符用于对多个条件进行逻辑操作。
运算符 | 逻辑表达式 | 描述 |
---|---|---|
and | x and y | 布尔"与":如果 x 为 False,x and y 返回False,否则它返回y的值。 |
or | x or y | 布尔"或":如果x是True,它返回True,否则它返回y的值。 |
not | x or y | 布尔"⾮":如果x为True,返回False 。如果x为False,它返回True。 |
3.1 与运算符(and):检查多个条件是否同时为真。
a = 5
b = 3
c = 7
result = (a > b) and (b < c)
print(result) # 输出:True
3.2 或运算符(or):检查多个条件是否至少有一个为真。
a = 5
b = 3
c = 7
result = (a > b) or (b > c)
print(result) # 输出:True
3.3 非运算符(not):对条件进行取反操作。
a = 5
result = not (a == 5)
print(result) # 输出:False
四、赋值运算符
赋值运算符用于给变量赋值。
运算符 | 描述 | 实例 |
---|---|---|
= | 赋值 | 将 = 右侧的结果赋值给等号左侧的变量 |
+= | 加法赋值运算符 | c += a 等价于 c = c + a |
-= | 减法赋值运算符 | c -= a 等价于 c = c- a |
*= | 乘法赋值运算符 | c *= a 等价于 c = c * a |
/= | 除法赋值运算符 | c /= a 等价于 c = c / a |
//= | 整除赋值运算符 | c //= a 等价于 c = c // a |
%= | 取余赋值运算符 | c %= a 等价于 c = c % a |
**= | 幂赋值运算符 | c ** = a 等价于 c = c ** a |
4.1 简单赋值运算符(=):将值赋给变量。
a = 5
print(a) # 输出:5
4.2 加法赋值运算符(+=):将右边的操作数与左边的操作数相加,并将结果赋给左边的操作数。
a = 5
a += 3
print(a) # 输出:8
4.3 减法赋值运算符(-=):将右边的操作数从左边的操作数中减去,并将结果赋给左边的操作数。
a = 5
a -= 3
print(a) # 输出:2
4.4 乘法赋值运算符(*=):将右边的操作数与左边的操作数相乘,并将结果赋给左边的操作数。
a = 5
a *= 3
print(a) # 输出:15
4.5 除法赋值运算符(/=):将左边的操作数除以右边的操作数,并将结果赋给左边的操作数。
a = 10
a /= 2
print(a) # 输出:5.0
4.6 取模赋值运算符(%=):将左边的操作数除以右边的操作数的余数,并将结果赋给左边的操作数。
a = 10
a %= 3
print(a) # 输出:1
4.7 幂赋值运算符(**=):将左边的操作数的值提升到右边的操作数,并将结果赋给左边的操作数。
a = 2
a **= 3
print(a) # 输出:8
4.8 取整除赋值运算符(//=):将左边的操作数除以右边的操作数的整数部分,并将结果赋给左边的操作数。
a = 10
a //= 3
print(a) # 输出:3
五、位运算符
位运算符用于对二进制数字进行操作。
运算符 | 描述 | 实例 |
---|---|---|
& | 按位与 | a&b |
| | 按位或 | a|b |
^ | 按位异或 | a^b |
~ | 按位取反 | ~a |
<< | 按位左移 | a<<b |
>> | 按位右移 | a>>b |
5.1 按位与运算符(&):对两个操作数的每个位执行逻辑与操作。 |
a = 5 # 二进制表示:0101
b = 3 # 二进制表示:0011
result = a & b
print(result) # 输出:1,二进制表示:0001
5.2 按位或运算符(|):对两个操作数的每个位执行逻辑或操作。
a = 5 # 二进制表示:0101
b = 3 # 二进制表示:0011
result = a | b
print(result) # 输出:7,二进制表示:0111
5.3 按位异或运算符(^):对两个操作数的每个位执行逻辑异或操作。
a = 5 # 二进制表示:0101
b = 3 # 二进制表示:0011
result = a ^ b
print(result) # 输出:6,二进制表示:0110
5.4 按位取反运算符(~):对操作数的每个位执行逻辑取反操作。
a = 5 # 二进制表示:0101
result = ~a
print(result) # 输出:-6
5.5 左移运算符(<<):将左操作数的位向左移动右操作数指定的位数。
a = 5 # 二进制表示:0101
result = a << 2
print(result) # 输出:20,二进制表示:10100
5.6 右移运算符(>>):将左操作数的位向右移动右操作数指定的位数。
a = 5 # 二进制表示:0101
result = a >> 2
print(result) # 输出:1,二进制表示:0001
六、成员运算符
成员运算符用于检查一个值是否存在于列表、元组、字符串等可迭代对象中。
运算符 | 描述 |
---|---|
in | 判断某个值是否在指定序列中,在则返回True |
not in | 判断某个值是否在指定序列中,不在则返回True |
6.1 in运算符:检查一个值是否存在于可迭代对象中。
fruits = ['apple', 'banana', 'orange']
result = 'apple' in fruits
print(result) # 输出:True
6.2 not in运算符:检查一个值是否不存在于可迭代对象中。
fruits = ['apple', 'banana', 'orange']
result = 'grape' not in fruits
print(result) # 输出:True
七、身份运算符
身份运算符用于检查两个对象是否是同一个对象。
运算符 | 描述 |
---|---|
is | 判断两个数据引用对象否一致,一致为TRUE |
is not | 判断两个数据引用对象是否不一致,不一致为TRUE |
7.1 is运算符:检查两个对象是否是同一个对象。
a = [1, 2, 3]
b = a
result = a is b
print(result) # 输出:True
7.2 is not运算符:检查两个对象是否不是同一个对象。
a = [1, 2, 3]
b = [1, 2, 3]
result = a is not b
print(result) # 输出:True