【一】运算符
【1】 算术运算符
算术运算符用于进行数学计算,包括加、减、乘、除等基本操作。它们是编程中最常用的运算符。
常见的算术运算符:
| 运算符 | 描述 | 示例 | 结果 |
|---|---|---|---|
+ |
加法 | 10 + 3 |
13 |
- |
减法 | 10 - 3 |
7 |
* |
乘法 | 10 * 3 |
30 |
/ |
除法 | 10 / 3 |
3.333 |
// |
整除 | 10 // 3 |
3 |
% |
取余 | 10 % 3 |
1 |
** |
幂运算 | 10 ** 3 |
1000 |
示例代码:
python
a = 10
b = 3
print(a + b) # 输出 13
print(a - b) # 输出 7
print(a * b) # 输出 30
print(a / b) # 输出 3.3333333333333335
print(a // b) # 输出 3
print(a % b) # 输出 1
print(a ** b) # 输出 1000
【2】比较运算符
比较运算符用于比较两个值,结果返回布尔值 True 或 False,常用在条件判断中。
常见的比较运算符:
| 运算符 | 描述 | 示例 | 结果 |
|---|---|---|---|
== |
等于 | 3 == 2 |
False |
!= |
不等于 | 3 != 2 |
True |
> |
大于 | 3 > 2 |
True |
< |
小于 | 3 < 2 |
False |
>= |
大于等于 | 3 >= 2 |
True |
<= |
小于等于 | 3 <= 2 |
False |
示例代码:
python
x = 3
y = 2
print(x == y) # 输出 False
print(x != y) # 输出 True
print(x > y) # 输出 True
print(x < y) # 输出 False
print(x >= y) # 输出 True
print(x <= y) # 输出 False
【3】赋值运算符
赋值运算符用于将值赋给变量,并支持自加、自减、自乘等简便操作。是编程中非常基础且常用的运算符。
(1)普通赋值运算符
常见的赋值运算符:
| 运算符 | 描述 | 示例 | 等价于 |
|---|---|---|---|
= |
赋值 | x = 5 |
x = 5 |
+= |
加赋值 | x += 3 |
x = x + 3 |
-= |
减赋值 | x -= 3 |
x = x - 3 |
*= |
乘赋值 | x *= 3 |
x = x * 3 |
/= |
除赋值 | x /= 3 |
x = x / 3 |
//= |
整除赋值 | x //= 3 |
x = x // 3 |
%= |
取余赋值 | x %= 3 |
x = x % 3 |
**= |
幂赋值 | x **= 3 |
x = x ** 3 |
示例代码:
python
x = 10
x += 5 # 等价于 x = x + 5,结果为 15
x -= 3 # 等价于 x = x - 3,结果为 12
x *= 2 # 等价于 x = x * 2,结果为 24
x /= 4 # 等价于 x = x / 4,结果为 6.0
(2)链式赋值
python
a = b = c = d = 99
(3)交叉赋值
python
x = 10
y = 3
x, y = y, x
print(x, y) # 3 10
(4)解包赋值
可以将列表 / 元组 / 集合 能够索引取值的类型中的每一个元素按照位置获取出来,如果列表中的元素与变量的个数不一致会报错
python
num_list = [1, 2, 3]
a, b, c = num_list
print(a, b, c) # 1 2 3
# 可以用下划线来存储不需要的变量值
x, y, _ = num_list
print(x, y) # 1 2
【4】逻辑运算符
逻辑运算符用于组合多个条件,返回布尔值 True 或 False,在条件判断和控制结构中十分常用。
常见的逻辑运算符:
| 运算符 | 名称 | 描述 | 示例 | 结果 |
|---|---|---|---|---|
and |
逻辑与 | 全对才对 | True and False |
False |
or |
逻辑或 | 全错才错 | True or False |
True |
not |
逻辑非 | 反转 | not True |
False |
示例代码:
python
a = True
b = False
print(a and b) # 输出 False
print(a or b) # 输出 True
print(not a) # 输出 False
【5】位运算符
位运算符用于直接操作二进制位,主要用于底层编程或硬件控制,可以通过左移快速的对2进行算平方,对一般的应用程序开发不常用。
常见的位运算符:
| 运算符 | 描述 | 示例 | 结果 |
|---|---|---|---|
& |
按位与 | 5 & 3 |
1 |
| ` | ` | 按位或 | `5 |
^ |
按位异或 | 5 ^ 3 |
6 |
~ |
按位取反 | ~5 |
-6 |
<< |
左移 | 5 << 1 |
10 |
>> |
右移 | 5 >> 1 |
2 |
示例代码:
python
x = 5 # 二进制为 0101
y = 3 # 二进制为 0011
print(x & y) # 输出 1(二进制为 0001)
print(x | y) # 输出 7(二进制为 0111)
print(x ^ y) # 输出 6(二进制为 0110)
print(~x) # 输出 -6(二进制为 -0110,补码表示)
print(x << 1) # 输出 10(二进制为 1010)
print(x >> 1) # 输出 2(二进制为 0010)
【6】成员运算符
成员运算符用于检查某个值是否存在于序列(如列表、元组、字符串)中,返回布尔值 True 或 False,在数据结构操作中非常常用。
常见的成员运算符:
| 运算符 | 描述 | 示例 | 结果 |
|---|---|---|---|
in |
在序列中 | 'a' in 'apple' |
True |
not in |
不在序列中 | 'b' not in 'apple' |
True |
示例代码:
python
fruits = ["apple", "banana", "cherry"]
print("apple" in fruits) # 输出 True
print("grape" not in fruits) # 输出 True
【7】身份运算符
身份运算符用于比较两个对象的内存地址,判断它们是否是同一个对象。适合在需要比较对象身份的场景中使用,常
用于对象的内存管理。
常见的身份运算符:
| 运算符 | 描述 | 示例 | 结果 |
|---|---|---|---|
is |
是同一个对象 | a is b |
True 或 False |
is not |
不是同一个对象 | a is not b |
True 或 False |
示例代码:
python
x = [1, 2, 3]
y = x
z = [1, 2, 3]
print(x is y) # 输出 True,因为 y 和 x 是同一个对象
print(x is z) # 输出 False,因为 z 是另一个列表,虽然内容相同
print(x == z) # 输出 True,因为 x 和 z 的内容相同
(1)== 和 is 的区别
- == 比较的是值 两个值是否相等
- is 比较的是值 和 内存地址是否相等
【8】运算符优先级
运算符优先级决定了运算符的执行顺序,优先级高的运算符会先执行。在复合运算中,理解运算符优先级可以帮助我们正确书写表达式。
-
运算符优先级(从高到低):
- 指数运算符 :
** - 按位取反、逻辑非 :
~,not - 乘除、取余、整除 :
*,/,//,% - 加减 :
+,- - 移位运算符 :
<<,>> - 比较运算符 :
<,<=,>,>= - 等于运算符 :
==,!= - 位运算符 :
&,^,| - 逻辑运算符 :
and,or - 赋值运算符 :
=,+=,-=,*=,/=,%=等
- 指数运算符 :