Python运算符详解:从基础到高级的快速查询指南
这是文章《Python操作符-快速查询》的第1部分(共3部分)。
Python的运算符允许我们对变量进行常见的处理。我们将通过示例讨论不同类型的运算符以及运算符的优先级。它们是可以操纵一个或多个操作数值的特殊符号。
Python运算符列表
Python的运算符可以分为几个类别。
- 赋值运算符 (Assignment Operators)
- 算术运算符 (Arithmetic Operators)
- 逻辑运算符 (Logical Operators)
- 比较运算符 (Comparison Operators)
- 位运算符 (Bitwise Operators)
Python赋值运算符
赋值运算符包括基本的等号(=)赋值运算符。
然而,为了简化代码并减少冗余,Python还包含了算术赋值运算符。
这包括了Python中用于加法赋值的+=
操作符,地板除法的赋值运算符//=
,以及其他操作符。
以下是Python中所有算术赋值运算符的列表。
运算符 (Operator) | 描述 (Description) |
---|---|
+= |
a += b 等同于 a = a + b |
*= |
a *= b 等同于 a = a * b |
/= |
a /= b 等同于 a = a / b |
%= |
a %= b 等同于 a = a % b |
**= |
a **= b 等同于 a = a ** b (幂运算符) |
//= |
a //= b 等同于 a = a // b (整除运算符) |
使用赋值运算符
# 定义两个变量,并使用赋值运算符进行操作
a = 3
b = 4
print("a: " + str(a))
print("b: " + str(b))
# 等同于 a = a + b
a += b
print("a: " + str(a))
print("b: " + str(b))
# 等同于 a = a * b
a *= b
print("a: " + str(a))
print("b: " + str(b))
# 等同于 a = a / b
a /= b
print("a: " + str(a))
print("b: " + str(b))
# 等同于 a = a % b
a %= b
print("a: " + str(a))
print("b: " + str(b))
# 等同于 a = a ** b (幂运算符)
a **= b
print("a: " + str(a))
print("b: " + str(b))
# 等同于 a = a // b (整除运算符)
a //= b
print("a: " + str(a))
print("b: " + str(b))

Python的算术运算符
运算符 (Operator) | 描述 (Description) | 示例 (Example) |
---|---|---|
+ |
用于将两个数字相加 | sum = a + b |
- |
用于减法运算 | difference = a - b |
* |
用于将两个数字相乘。如果一个字符串和一个整数相乘,则字符串会重复整数次。 | mul = a * b >>> "Hi" * 5 'HiHiHiHiHi' |
/ |
用于将两个数字相除 | div = b / a |
% |
取模运算符,返回除法的余数 | mod = a % b |
** |
幂运算符 | power = a ** b |
# 创建两个变量
a = 100
b = 200
# 加法 (+) 运算符
print(a + b)
# 减法 (-) 运算符
print(a - b)
# 乘法 (*) 运算符
print(a * b)
# 除法 (/) 运算符
print(b / a)
# 取模 (%) 运算符
print(a % b) # 打印 a 除以 b 的余数
# 幂 (**) 运算符
print(a ** b) # 打印 a 的 b 次方

Python比较运算符
运算符 (Operator) | 描述 (Description) | 示例 (Example) |
---|---|---|
== |
如果两个操作数相等,则返回 True ,否则返回 False 。 |
flag = a == b |
!= |
如果两个操作数不相等,则返回 True ,否则返回 False 。 |
flag = a != b |
> |
如果左操作数大于右操作数,则返回 True ,否则返回 False 。 |
flag = a > b |
< |
如果左操作数小于右操作数,则返回 True ,否则返回 False 。 |
flag = a < b |
>= |
如果左操作数大于或等于右操作数,则返回 True ,否则返回 False 。 |
flag = a >= b |
<= |
如果左操作数小于或等于右操作数,则返回 True ,否则返回 False 。 |
flag = a <= b |
这是文章《Python操作符-快速查询》的第2部分(共3部分)。
# 创建两个变量
a=100
b=200
# (==) 运算符,检查两个操作数是否相等
print(a==b)
# (!=) 运算符,检查两个操作数是否不相等
print(a!=b)
# (>) 运算符,检查左操作数是否大于右操作数
print(a>b)
# (<) 运算符,检查左操作数是否小于右操作数
print(a<b)
# (>=) 运算符,检查左操作数是否大于或等于右操作数
print(a>=b)
# (<=) 运算符,检查左操作数是否小于或等于右操作数
print(a<=b)

Python的位运算符
运算符 | 描述 | 示例 |
---|---|---|
& | 按位与运算符 | x = 10 & 7 = 2 |
| | 按位或运算符 | x = 10 | 7 = 15 |
^ | 按位异或运算符 | x = 10 ^ 7 = 13 |
~ | 按位取反运算符 | x = ~10 = -11 |
<< | 左移运算符 | x = 10 << 1 = 20 |
>> | 右移运算符 | x = 10 >> 1 = 5 |
# 创建两个变量
a=10 # 二进制 1010
b=7 # 二进制 0111
# 按位与 (&) 运算符,执行按位与操作
print(a&b)
# 按位或 (|) 运算符,执行按位或操作
print(a|b)
# 按位异或 (^) 运算符,执行按位异或操作
print(a^b)
# 按位取反 (~) 运算符,执行按位取反操作
print(~a)
# 左移 (<<) 运算符,执行左移操作
print(a<<1)
# 右移 (>>) 运算符,执行右移操作
print(a>>1)

Python 逻辑运算符
运算符 | 描述 | 示例 |
---|---|---|
and | 逻辑与运算符 | flag = exp1 and exp2 |
or | 逻辑或运算符 | flag = exp1 or exp2 |
not | 逻辑非运算符 | flag = not(True) = False |
# 获取用户输入的整数
a=int(input())
# 逻辑与操作
if a%4==0 and a%3==0:
print("能同时被4和3整除")
# 逻辑或操作
if a%4==0 or a%3==0:
print("能被4或3整除")
# 逻辑非操作
if not(a%4==0 or a%3==0):
print("既不能被4也不能被3整除")

Python运算符优先级
这是文章《Python操作符-快速查询》的第3部分(共3部分)。
运算符的优先级指的是运算符执行的先后顺序。当一个表达式中包含多个运算符时,理解优先级变得至关重要。例如,考虑下面的表达式:
>>> 2+3*4
现在,你认为操作序列应该是什么?我们可以先将2和3相加,然后将结果乘以4。或者,我们也可以先将3和4相乘,然后再与2相加。从这里我们可以看出运算符的优先级是多么重要。
以下是一份Python运算符优先级的列表,按降序排列。这意味着排在前面的组具有比排在后面的组更高的优先级。
- 括号 -
()
- 指数运算 -
**
- 位反转、一元正负 -
~
、+
、-
- 乘法、除法、取模 -
*
、/
、%
- 加法和减法 -
+
、-
- 右移和左移 -
>>
、<<
- 位与运算 -
&
- 位或和异或运算 -
|
、^
- 比较运算符 -
==
、!=
、>
、<
、>=
、<=
- 赋值运算符 -
=