Python运算符

2025年4月18日 | 阅读 14 分钟

在 Python 中,运算符是用于对不同的值和变量执行特定操作的符号。这些值和变量被视为操作数,运算符作用于它们之上。运算符是特定编程语言中构建逻辑的基础。

Python 中使用的运算符类型如下

  1. 算术运算符
  2. 比较运算符
  3. 赋值运算符
  4. 逻辑运算符
  5. 按位运算符
  6. 成员运算符
  7. 身份运算符

现在让我们在接下来的章节中讨论这些 Python 中使用的运算符。

算术运算符

Python 算术运算符用于两个操作数上,执行基本的数学运算,如加法、减法、乘法和除法。Python 中有不同类型的算术运算符,包括用于加法的 '+' 运算符、用于减法的 '-' 运算符、用于乘法的 '*'、用于除法的 '/'、用于取模的 '%'、用于幂运算的 '**' 和用于整除的 '//'。

让我们来看下面的算术运算符表以获得详细解释。

序号。运算符语法描述
1+ (加法)r = a + b此运算符用于将两个操作数相加。例如,如果 a = 15,b = 10 => a + b = 15 + 10 = 25
2- (减法)r = a - b此运算符用于从第一个操作数中减去第二个操作数。如果第一个操作数小于第二个操作数,则结果为负值。例如,如果 a = 20,b = 5 => a - b = 20 – 5 = 15
3/ (除法)r = a / b此运算符返回用第一个操作数除以第二个操作数后的商。例如,如果 a = 15,b = 4 => a / b = 15 / 4 = 3.75
4* (乘法)r = a * b此运算符用于将一个操作数乘以另一个操作数。例如,如果 a = 20,b = 4 => a * b = 20 * 4 = 80
5% (取模)r = a % b此运算符返回用第一个操作数除以第二个操作数后的余数。例如,如果 a = 20,b = 10 => a % b = 20 % 10 = 0
6** (幂)r = a ** b由于此运算符计算第一个操作数的第二个幂,因此它是一个幂运算符。例如,如果 a = 2,b = 3 => a**b = 2**3 = 2^3 = 2*2*2 = 8
7// (整除)r = a // b此运算符提供通过除以两个操作数获得的商的向下取整值。例如,如果 a = 15,b = 4 => a // b = 15 // 4 = 3

程序代码

现在我们给出 Python 中算术运算符的代码示例。代码如下 -

示例

立即执行

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

 
For a = 46 and b = 4 
Calculate the following:
1. Addition of two numbers: a + b = 50
2. Subtraction of two numbers: a - b = 42
3. Multiplication of two numbers: a * b = 184
4. Division of two numbers: a / b = 11.5
5. Floor division of two numbers: a // b = 11
6. Reminder of two numbers: a mod b = 2
7. Exponent of two numbers: a ^ b = 4477456

比较运算符

Python 比较运算符主要用于比较两个值或变量(操作数)并相应地返回布尔值 True 或 False。Python 中有各种类型的比较运算符,包括 '==', '!=', '<=', '>=', '<' 和 '>'。

让我们来看下面的比较运算符表以获得详细解释。

序号。运算符语法描述
1==a == b等于:如果两个操作数的值相等,则条件为真。
2!=a != b不等于:如果两个操作数的值不相等,则条件为真。
3<=a <= b小于或等于:如果第一个操作数小于或等于第二个操作数,则满足条件。
4>=a >= b大于或等于:如果第一个操作数大于或等于第二个操作数,则满足条件。
5>a > b大于:如果第一个操作数大于第二个操作数,则条件为真。
6<a < b小于:如果第一个操作数小于第二个操作数,则条件为真。

程序代码

现在我们给出 Python 中比较运算符的代码示例。代码如下 -

示例

立即执行

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

For a = 46 and b = 4 
Check the following:
1. Two numbers are equal or not: False
2. Two numbers are not equal or not: True
3. a is less than or equal to b: False
4. a is greater than or equal to b: True
5. a is greater b: True
6. a is less than b: False

赋值运算符

使用赋值运算符,右侧表达式的值被赋给左侧操作数。Python 提供了不同的赋值运算符来为变量赋值。这些赋值运算符包括 '=', '+=', '-=', '*=', '/=', '%=', '//=', '**=', '&=', '|=', '^=', '>>=', 和 '<<='。

让我们来看下面的常用赋值运算符表以获得详细解释。

序号。运算符语法描述
1=a = b + c此运算符将右侧表达式的值赋给左侧操作数。
2+=a += b => a = a + b加法和:此运算符将右侧操作数加到左侧操作数上,并将结果值赋给左侧操作数。例如,如果 a = 15,b = 20 => a += b 将等于 a = a + b,因此,a = 15 + 20 => a = 35
3-=a -= b => a = a - b减法和:此运算符将右侧操作数从左侧操作数中减去,并将结果值赋给左侧操作数。例如,如果 a = 47,b = 32 => a -= b 将等于 a = a - b,因此,a = 47 - 32 => a = 15
4*=a *= b => a = a * b乘法和:此运算符将右侧操作数与左侧操作数相乘,并将结果值赋给左侧操作数。例如,如果 a = 12,b = 4 => a *= b 将等于 a = a * b,因此,a = 12 * 4 => a = 48
5/=a /= b => a = a / b除法和:此运算符用左侧操作数除以右侧操作数,并将结果值赋给左侧操作数。例如,如果 a = 15,b = 2 => a /= b 将等于 a = a / b,因此,a = 15 / 2 => a = 7.5
6%=a %= b => a = a % b取模和:此运算符使用左右操作数计算模,并将结果值赋给左侧操作数。例如,如果 a = 20,b = 10 => a %= b 将等于 a = a % b,因此,a = 20 % 10 => a = 0
7**=a **= b => a = a ** b幂运算和:此运算符使用两侧的操作数计算幂值,并将结果值赋给左侧操作数。例如,如果 a = 2,b = 3 => a **= b 将等于 a = a ** b,因此,a = 2 ** 3 = 8
8//=a //= b => a = a // b整除和:此运算符用左侧操作数除以右侧操作数,并将结果的向下取整值赋给左侧操作数。例如,如果 a = 15,b = 2 => a //= b 将等于 a = a // b,因此,a = 15 // 2 => a = 7

程序代码

现在我们给出 Python 中赋值运算符的代码示例。代码如下 -

示例

立即执行

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

a += b: 40
a -= b: 28
a *= b: 204
a /= b: 5.666666666666667
a %= b: 4
a **= b: 1544804416
a //= b: 5

按位运算符

位运算符对两个操作数的值进行逐位处理。Python 中使用多种位运算符,例如按位或 (|)、按位与 (&)、按位异或 (^)、取反 (~) 、左移 (<<) 和右移 (>>)。

让我们来看下面的位运算符表以获得详细解释。

序号。运算符语法描述
1&a & b按位与:如果两个操作数在相同位置的位都为 1,则将 1 复制到结果中。否则,复制 0。
2|a | b按位或:如果两个位都为零,则结果位将为 0;否则,结果位将为 1。
3^a ^ b按位异或:如果两个位不同,则结果位为 1,否则为 0。
4~~a按位非:计算操作数的位为其倒数,所以如果一个位是 0,下一个位将是 1,反之亦然。
5<<a <<按位左移:将左操作数的值左移右操作数中的位数。
6>>a >>按位右移:左操作数向右移动右操作数中的位数。

程序代码

现在我们给出 Python 中位运算符的代码示例。代码如下 -

示例

立即执行

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

a & b : 0
a | b : 15
a ^ b : 15
~a : -8
a << b : 1792
a >> b : 0

逻辑运算符

逻辑运算符通常用于评估表达式以做出决策。Python 提供了不同类型的逻辑运算符,如 and、or 和 not。对于逻辑 AND,如果第一个为 0,它不取决于第二个。对于逻辑 OR,如果第一个为 1,它不取决于第二个。

让我们来看下面的 Python 中使用的逻辑运算符表以获得详细解释。

序号。运算符语法描述
1并且a 和 b逻辑与:如果表达式为真,则条件也为真。如果两个表达式 a 和 b 相同,则 a 和 b 都必须为真。
2a or b逻辑或:如果其中一个表达式为真,则条件为真。如果 a 和 b 是两个表达式,那么 a 或 b 必须为真才能使条件为真。
3notnot a逻辑非:如果表达式 a 为真,则 not (a) 为假,反之亦然。

程序代码

现在我们给出 Python 中逻辑运算符的代码示例。代码如下 -

示例

立即执行

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

For a = 7, checking whether the following conditions are True or False:
"a > 5 and a < 7" => False
"a > 5 or a < 7" => True
"not (a > 5 and a < 7)" => True

成员运算符

我们可以使用 Python 成员运算符来验证一个值是否存在于 Python 数据结构中。如果该值或变量存在于序列(列表、元组或字典)中,则结果为真;否则,返回 False。

序号。运算符描述
1in如果第一个操作数(值或变量)存在于第二个操作数(序列)中,则评估为真。序列可以是列表、元组或字典。
2不在如果第一个操作数(值或变量)不存在于第二个操作数(序列)中,则评估为真。序列可以是列表、元组或字典。

程序代码

现在我们给出 Python 中成员运算符的代码示例。代码如下 -

示例

立即执行

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下:

Given List: [12, 22, 28, 35, 42, 49, 54, 65, 92, 103, 245, 874]
x = 31 is NOT present in the given list.
y = 28 is present in the given list. 

身份运算符

Python 提供了两个身份运算符 is 和 is not,用于检查两个值是否位于内存的同一位置。两个相等但并不意味着它们是相同的。

序号。运算符描述
1is如果两侧的引用指向同一个对象,则评估为真。
2is not如果两侧的引用不指向同一个对象,则评估为真。

程序代码

现在我们给出 Python 中身份运算符的代码示例。代码如下 -

示例

立即执行

输出

现在我们在 Python 中编译上述代码,并在成功编译后运行它。然后输出如下 -

a is c =>  True
a is not c =>  False
a is b =>  False
a is not b =>  True
a == b =>  True
a != b =>  False

算符优先

运算符的检查顺序对于理解至关重要,因为它告诉我们首先需要考虑哪个运算符。下面是 Python 运算符的优先级表。

序号。运算符描述
1**在表达式中使用的其他运算符中,幂运算符具有最高优先级。
2~, +, -负数、一元加法和取反。
3*, /, %, //整除、取模、除法和乘法。
4+, -二元加法和减法
5>>, <<左移和右移
6&二元与。
7^, |二元异或和或
8<=, <, >, >=比较运算符(小于、小于等于、大于、大于等于)。
9<>, ==, !=相等运算符。
10=, %=, /=, //=, -=, +=,
*=, **=
赋值运算符
11is, is not身份运算符
12in, not in成员运算符
13not, or, and逻辑运算符

结论

因此,在本文中,我们讨论了所有的 Python 运算符。我们简要讨论了它们的工作原理,并分享了在 Python 中使用每个运算符的程序代码。


下一个主题Python 注释