运算符
分类:
-
算术运算符
-
赋值运算符
-
复合赋值运算符
-
比较运算符
-
逻辑运算符
1. 算术运算符
| 运算符 | 说明 | 示例 |
|---|---|---|
| + | 加 | 1+2输出结果为3 |
| - | 减 | 2-1输出结果为1 |
| * | 乘 | 1*2输出结果为2 |
| / | 除 | 4/2输出结果为2 |
| // | 整除 | 5//2输出结果为2 |
| % | 取余 | 5%2输出结果为1 |
| ** | 指数 | 2**3输出结果为8 |
注:混合运算优先级顺序:()高于** 高于 * / // % 高于+ -
2. 赋值运算符
| 运算符 | 说明 | 示例 |
|---|---|---|
| = | 赋值 | 将=右侧的结果赋值给=左侧的变量 |
- 单个变量赋值
a=12
print(a)
运行结果:
12
- 多个变量赋值
a,b,c=12,12.3,'Jack'
print(a)
print(b)
print(c)
运行结果:
12
12.3
Jack
- 多个变量赋相同值
a=b=12
print(a)
print(b)
运行结果:
12
12
3. 复合赋值运算符
| 运算符 | 说明 | 示例 |
|---|---|---|
| += | 加法赋值运算符 | b+=a等价于b=b+a |
| -= | 减法赋值运算符 | b-=a等价于b=b-a |
| *= | 乘法赋值运算符 | b*=a等价于b=b*a |
| /= | 除法赋值运算符 | b/=a等价于b=b/a |
| //= | 整除赋值运算符 | b//=a等价于b=b//a |
| %= | 取余赋值运算符 | b%=a等价于b=b%a |
| **= | 幂赋值运算符 | b**=a等价于b=**a |
a=12
a+=3
print(a) # 输出15
b=23
b*=2
print(b) # 输出46
c=34
c += 1 + 2
print(c) # 输出37
d=12
d *= 1 + 2
print(d) # 输出36
运行结果:
15
46
37
36
4. 比较运算符
比较运算符也称关键运算符,通常用于判断
| 运算符 | 说明 | 示例 |
|---|---|---|
| == | 判断相等。若两个操作数的结果相等,则条件结果为真(True),否则条件结果为假 | a=1,b=2,则(a==b)为False |
| != | 不相等。若两个操作数的结果不相等,则条件结果为真(True),否则条件结果为假 | a=1,b=2,则(a!=b)为True |
| > | 运算符左侧操作数结果是否大于右侧操作数,若大于,则条件为真,否则为假 | a=1,b=2,则(a>b)为False |
| < | 运算符左侧操作数结果是否小于右侧操作数,若小于,则条件为真,否则为假 | a=1,b=2,则(a<b)为True |
| >= | 运算符左侧操作数结果是否大于等于右侧操作数,若大于等于,则条件为真,否则为假 | a=1,b=2,则(a>=b)为False |
| <= | 运算符左侧操作数结果是否小于等于右侧操作数,若小于等于,则条件为真,否则为假 | a=1,b=2,则(a<=b)为True |
a=1
b=2
print(a==b)
print(a!=b)
print(a>b)
print(a<b)
print(a>=b)
print(a<=b)
运行结果:
False
True
False
True
False
True
5. 逻辑运算符
| 运算符 | 逻辑表达式 | 描述 | 示例 |
|---|---|---|---|
| and | x and y | 布尔"与":若x为False,x and y 返回False,否则返回y的值 | True and False,返回False |
| or | x and y | 布尔"或":若x为True,x and y 返回True,否则返回y的值 | True and False,返回True |
| not | not x | 布尔"非":若x为True,返回False,若x为False,返回True | not True返回False,not False返回True |
a=1
b=2
c=3
print((a>b) and (b>c))
print((a>b) or (b>c))
print(not (a>b))
运行结果:
False
False
True
数字逻辑运算
a=0
b=1
c=2
print('x and y')
# and运算符,只要有一个值为0,则结果为0,否则结果为最后一个非0数字
print(a and b) # 0
print(b and a) # 0
print(a and c) # 0
print(c and a) # 0
print(b and c) # 2
print(c and b) # 1
print('x or y')
# or运算符,只有所有值为0结果才为0,否则结果为第一个非0数字
print(a or b) # 1
print(a or c) # 2
print(b or c) # 1
运行结果:
x and y
0
0
0
0
2
1
x or y
1
2
1








