← 返回首页
🔢

运算符详解

📂 python ⏱ 2 min 381 words

算术运算符

算术运算符用于执行基本的数学运算:

a = 17
b = 5

print(a + b)   # 加法: 22
print(a - b)   # 减法: 12
print(a * b)   # 乘法: 85
print(a / b)   # 除法: 3.4(总是返回浮点数)
print(a // b)  # 整除: 3(向下取整)
print(a % b)   # 取余: 2(模运算)
print(a ** b)  # 幂运算: 1419857

注意事项/ 运算符总是返回浮点数,即使能整除。如果需要整数结果,使用 //

print(10 / 2)   # 输出: 5.0(浮点数)
print(10 // 2)  # 输出: 5(整数)

比较运算符

比较运算符用于比较两个值,返回布尔值(True 或 False):

x = 10
y = 20

print(x == y)   # 等于: False
print(x != y)   # 不等于: True
print(x > y)    # 大于: False
print(x < y)    # 小于: True
print(x >= y)   # 大于等于: False
print(x <= y)   # 小于等于: True

链式比较是Python的特色语法:

age = 25
print(18 <= age <= 65)  # 等价于 18 <= age and age <= 65

逻辑运算符

逻辑运算符用于组合布尔表达式:

a = True
b = False

print(a and b)  # 与: False(两个都为True才返回True)
print(a or b)   # 或: True(有一个为True就返回True)
print(not a)    # 非: False(取反)

短路求值:Python在计算逻辑表达式时,如果左边的条件已经能确定结果,右边的表达式不会被执行。

# 如果x为0,后面的除法不会执行(避免除零错误)
x = 0
result = x != 0 and 10 / x > 2
print(result)  # 输出: False

实际应用示例

# 检查年龄和身份
age = 25
has_id = True

# 必须年满18岁且有身份证
can_enter = age >= 18 and has_id
print(can_enter)  # 输出: True

# 检查多种支付方式
has_cash = False
has_card = True
has_phone = True

# 有任意一种支付方式即可
can_pay = has_cash or has_card or has_phone
print(can_pay)  # 输出: True

赋值运算符

赋值运算符用于给变量赋值,Python支持组合赋值:

x = 10

x += 5    # 等价于 x = x + 5,x = 15
x -= 3    # 等价于 x = x - 3,x = 12
x *= 2    # 等价于 x = x * 2,x = 24
x /= 4    # 等价于 x = x / 4,x = 6.0
x //= 2   # 等价于 x = x // 2,x = 3.0
x **= 3   # 等价于 x = x ** 3,x = 27.0
x %= 5    # 等价于 x = x % 5,x = 2.0

身份运算符

身份运算符用于比较两个对象的内存地址(是否是同一个对象):

a = [1, 2, 3]
b = [1, 2, 3]
c = a

print(a == b)   # 值相等: True
print(a is b)   # 同一对象: False
print(a is c)   # 同一对象: True

什么时候用 is:推荐用于比较 NoneTrueFalse

x = None
print(x is None)      # 推荐
print(x == None)      # 不推荐

成员运算符

成员运算符用于检查值是否在序列中:

fruits = ["苹果", "香蕉", "橘子"]

print("苹果" in fruits)    # True
print("西瓜" not in fruits)  # True

# 字符串中也可以使用
print("Hello" in "Hello World")  # True

运算符优先级

运算符的执行顺序从高到低:

**          幂运算
+x, -x, ~x  一元运算符
*, /, //, % 乘除取余
+, -        加减
<<, >>      位移
&           按位与
^ |         按位异或、按位或
==, !=, >, <, >=, <=  比较
not         逻辑非
and         逻辑与
or          逻辑或

建议:不确定优先级时,使用括号明确运算顺序,提高代码可读性。

总结

运算符是操作数据的基础工具。掌握算术、比较、逻辑这三类运算符后,你就可以编写表达式和条件判断了。下一节我们将深入学习Python的字符串操作。