Python运算符

运算符是特殊符号,用于对变量和值执行操作。例如:

print(5 + 6)   # 11

这里,+ 是一个运算符,它将两个数字:56 相加。


Python 运算符的类型

以下是本教程中将学习的不同类型的 Python 运算符列表。

  1. 算术运算符
  2. 赋值运算符
  3. 比较运算符
  4. 逻辑运算符
  5. 位运算符
  6. 特殊运算符

1. Python 算术运算符

算术运算符用于执行加法、减法、乘法等数学运算。例如:

sub = 10 - 5 # 5

这里,- 是一个算术运算符,它减去两个值或变量。

运算符 操作 示例
+ 加法 5 + 2 = 7
- 减法 4 - 2 = 2
* 乘法 2 * 3 = 6
/ 除法 4 / 2 = 2
// 整除 10 // 3 = 3
% 取模 5 % 2 = 1
** 4 ** 2 = 16

示例 1:Python 中的算术运算符

a = 7
b = 2

# addition
print ('Sum: ', a + b)  

# subtraction
print ('Subtraction: ', a - b)   

# multiplication
print ('Multiplication: ', a * b)  

# division
print ('Division: ', a / b) 

# floor division
print ('Floor Division: ', a // b)

# modulo
print ('Modulo: ', a % b)  

# a to the power b
print ('Power: ', a ** b)   

输出

Sum: 9
Subtraction: 5
Multiplication: 14
Division: 3.5
Floor Division: 3
Modulo: 1
Power: 49

在上面的示例中,我们使用了多个算术运算符,

  • + 用于将 ab 相加
  • - 用于从 a 中减去 b
  • * 用于将 ab 相乘
  • / 用于将 a 除以 b
  • // 用于将 a 整除以 b
  • % 用于获取余数
  • ** 用于获取 ab 次幂

2. Python 赋值运算符

赋值运算符用于将值赋给变量。例如:

# assign 5 to x 
x = 5

这里,= 是一个赋值运算符,它将 5 赋给 x

以下是 Python 中可用的不同赋值运算符列表。

运算符 名称 示例
= 赋值运算符 a = 7
+= 加法赋值 a += 1 # a = a + 1
-= 减法赋值 a -= 3 # a = a - 3
*= 乘法赋值 a *= 4 # a = a * 4
/= 除法赋值 a /= 3 # a = a / 3
%= 余数赋值 a %= 10 # a = a % 10
**= 指数赋值 a **= 10 # a = a ** 10

示例 2:赋值运算符

# assign 10 to a
a = 10

# assign 5 to b
b = 5 

# assign the sum of a and b to a
a += b      # a = a + b

print(a)

# Output: 15

这里,我们使用了 += 运算符将 ab 的和赋给 a

同样,我们可以根据需要使用任何其他赋值运算符。


3. Python 比较运算符

比较运算符比较两个值/变量并返回布尔结果:TrueFalse。例如:

a = 5
b = 2

print (a > b)    # True

这里,> 比较运算符用于比较 a 是否大于 b

运算符 含义 示例
== 等于 3 == 5 结果为 False
!= 不等于 3 != 5 结果为 True
> 大于 3 > 5 结果为 False
< 小于 3 < 5 结果为 True
>= 大于或等于 3 >= 5 结果为 False
<= 小于或等于 3 <= 5 结果为 True

示例 3:比较运算符

a = 5

b = 2

# equal to operator
print('a == b =', a == b)

# not equal to operator
print('a != b =', a != b)

# greater than operator
print('a > b =', a > b)

# less than operator
print('a < b =', a < b)

# greater than or equal to operator
print('a >= b =', a >= b)

# less than or equal to operator
print('a <= b =', a <= b)

输出

a == b = False
a != b = True
a > b = True
a < b = False
a >= b = True
a <= b = False

注意: 比较运算符用于决策和循环。我们将在后续教程中详细讨论比较运算符和决策。


4. Python 逻辑运算符

逻辑运算符用于检查表达式是 True 还是 False。它们用于决策。例如:

a = 5
b = 6

print((a > 2) and (b >= 6))    # True

这里,and 是逻辑运算符 AND。由于 a > 2b >= 6 都为 True,结果是 True

运算符 示例 含义
and a and b 逻辑与:
仅当两个操作数都为 True 时才为 True
or a or b 逻辑或:
如果至少一个操作数为 True 则为 True
not not a 逻辑非:
如果操作数为 False 则为 True,反之亦然。

示例 4:逻辑运算符

# logical AND
print(True and True)     # True
print(True and False)    # False

# logical OR
print(True or False)     # True

# logical NOT
print(not True)          # False

注意:这里是这些逻辑运算符的真值表


5. Python 位运算符

位运算符对操作数进行操作,就像它们是二进制数字字符串一样。它们按位操作,因此得名。

例如,2 的二进制是 107 的二进制是 111

在下表中:x = 10(二进制 0000 1010),y = 4(二进制 0000 0100

运算符 含义 示例
& 按位与 x & y = 0 (0000 0000)
| 按位或 x | y = 14 (0000 1110)
~ 按位非 ~x = -11 (1111 0101)
^ 按位异或 x ^ y = 14 (0000 1110)
>> 按位右移 x >> 2 = 2 (0000 0010)
<< 按位左移 x 0010 1000)

6. Python 特殊运算符

Python 语言提供了一些特殊类型的运算符,如身份运算符和成员运算符。下面将通过示例进行描述。

身份运算符

在 Python 中,isis not 用于检查两个值是否位于相同的内存位置。

需要注意的是,拥有两个值相等的变量不一定意味着它们是相同的。

运算符 含义 示例
is 如果操作数相同(指向同一个对象),则为 True x is True
is not 如果操作数不相同(不指向同一个对象),则为 True x is not True

示例 4:Python 中的身份运算符

x1 = 5
y1 = 5
x2 = 'Hello'
y2 = 'Hello'
x3 = [1,2,3]
y3 = [1,2,3]

print(x1 is not y1)  # prints False

print(x2 is y2)  # prints True

print(x3 is y3)  # prints False

这里,我们看到 x1y1 是具有相同值的整数,所以它们相等且相同。x2y2(字符串)也是如此。

但是 x3y3 是列表。它们相等但不相同。这是因为解释器将它们分别定位在内存中,尽管它们相等。

成员运算符

在 Python 中,innot in 是成员运算符。它们用于测试值或变量是否存在于序列(字符串列表元组集合字典)中。

在字典中,我们只能测试键是否存在,不能测试值是否存在。

运算符 含义 示例
in 如果值/变量在序列中找到,则为 True 5 in x
not in 如果值/变量在序列中未找到,则为 True 5 not in x

示例 5:Python 中的成员运算符

message = 'Hello world'
dict1 = {1:'a', 2:'b'}

# check if 'H' is present in message string
print('H' in message)  # prints True

# check if 'hello' is present in message string
print('hello' not in message)  # prints True

# check if '1' key is present in dict1
print(1 in dict1)  # prints True

# check if 'a' key is present in dict1
print('a' in dict1)  # prints False

输出

True
True
True
False

这里,'H'message 中,但 'hello' 不在 message 中(请记住,Python 区分大小写)。

同样,1 是键,'a' 是字典 dict1 中的值。因此,'a' in y 返回 False


另请阅读

在我们结束之前,让我们测试一下您对 Python 运算符的知识!您能解决以下挑战吗?

挑战

编写一个函数来分摊朋友之间的餐馆账单。

  • 将账单的小计和朋友数量作为输入。
  • 通过在小计中添加 20% 的税来计算总账单,然后将其除以朋友数量。
  • 返回每个朋友需要支付的金额,四舍五入到两位小数。

视频:Python 中的运算符

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战