Python 运算符全解析

📅 2026/7/10 3:29:05
Python 运算符全解析
1. 引言在 Python 编程中运算符是用于对变量和值执行操作的特殊符号或关键字。它们是构建表达式、实现逻辑判断和进行数据计算的基础。掌握各类运算符的用法是编写高效、清晰 Python 代码的关键一步。本文将系统性地介绍 Python 中的五大类运算符算数运算符、赋值运算符、比较运算符、逻辑运算符以及其他常用运算符并通过丰富的代码示例帮助你快速理解和应用。2. 算数运算符算数运算符用于执行基本的数学运算如加、减、乘、除等。运算符名称示例结果加5 38-减5 - 32*乘5 * 315/除5 / 22.5//取整除向下取整5 // 22%取模求余数5 % 21**幂乘方5 ** 225代码示例a10b3print(ab)# 输出: 13print(a-b)# 输出: 7print(a*b)# 输出: 30print(a/b)# 输出: 3.3333333333333335print(a//b)# 输出: 3print(a%b)# 输出: 1print(a**b)# 输出: 10003. 赋值运算符赋值运算符用于为变量赋值或将运算结果赋值给变量。最基本的赋值运算符是。运算符示例等价于描述x 5x 5简单赋值x 3x x 3加法赋值-x - 3x x - 3减法赋值*x * 3x x * 3乘法赋值/x / 3x x / 3除法赋值//x // 3x x // 3取整除赋值%x % 3x x % 3取模赋值**x ** 3x x ** 3幂赋值代码示例x10x5# x x 5print(x)# 输出: 15x**2# x x ** 2print(x)# 输出: 225# 链式赋值abc1print(a,b,c)# 输出: 1 1 1# 多元赋值x,y,z1,2,3print(x,y,z)# 输出: 1 2 34. 比较运算符比较运算符也称关系运算符用于比较两个值返回布尔值True或False。运算符名称示例结果等于5 3False!不等于5 ! 3True大于5 3True小于5 3False大于等于5 3True小于等于5 3False代码示例a10b20print(ab)# 输出: Falseprint(a!b)# 输出: Trueprint(ab)# 输出: Falseprint(ab)# 输出: Trueprint(a10)# 输出: Trueprint(b20)# 输出: True# 比较运算符可以链式使用print(1a15)# 输出: True等价于 (1 a) and (a 15)5. 逻辑运算符逻辑运算符用于组合条件语句同样返回布尔值True或False。运算符描述示例and逻辑与 - 如果两个操作数都为真则条件为真。(a 0) and (b 0)or逻辑或 - 如果两个操作数中任意一个为真则条件为真。(a 0) or (b 0)not逻辑非 - 用于反转操作数的逻辑状态。not (a 0)真值表与短路求值xTrueyFalseprint(xandy)# 输出: Falseprint(xory)# 输出: Trueprint(notx)# 输出: False# 短路求值示例defcheck():print(函数被调用了)returnTrueresultFalseandcheck()# check() 函数不会被调用因为第一个操作数为 Falseprint(result)# 输出: FalseresultTrueorcheck()# check() 函数同样不会被调用因为第一个操作数为 Trueprint(result)# 输出: True6. 其他常用运算符除了以上四类Python 还提供了其他几类实用的运算符。6.1 身份运算符用于比较两个对象的内存地址是否为同一个对象。is判断两个标识符是否引用自同一个对象。is not判断两个标识符是否引用自不同对象。a[1,2,3]ba c[1,2,3]print(aisb)# 输出: Trueb 是 a 的引用print(aisc)# 输出: False值相同但对象不同print(ac)# 输出: True值相等6.2 成员运算符用于测试序列如字符串、列表、元组、字典、集合中是否包含指定的成员。in如果在指定的序列中找到值则返回True。not in如果在指定的序列中没有找到值则返回True。my_list[1,2,3,4,5]my_strHello, Python!print(3inmy_list)# 输出: Trueprint(10notinmy_list)# 输出: Trueprint(Pyinmy_str)# 输出: Trueprint(Javanotinmy_str)# 输出: True6.3 位运算符位运算符把数字看作二进制来进行计算日常开发中使用频率较低。按位与|按位或^按位异或~按位取反左移右移a60# 二进制0011 1100b13# 二进制0000 1101print(ab)# 输出: 12 (0000 1100)print(a|b)# 输出: 61 (0011 1101)print(a^b)# 输出: 49 (0011 0001)print(~a)# 输出: -61print(a2)# 输出: 240 (1111 0000)print(a2)# 输出: 15 (0000 1111)7. 运算符优先级当表达式中包含多个运算符时Python 会按照优先级顺序进行计算。优先级高的运算符先于优先级低的运算符进行计算。从高到低常见优先级()括号**指数~-按位取反一元加号和减号*/%//乘除取模取整除-加法减法左移右移按位与^|按位异或按位或比较运算符!等于不等于%///-***赋值运算符isis not身份运算符innot in成员运算符notorand逻辑运算符建议在编写复杂表达式时使用括号()来明确运算顺序这能使代码更清晰、更易读。# 优先级示例result103*2**2# 先算 2**24再算 3*412最后算 101222print(result)# 输出: 22# 使用括号改变优先级result(103)*2**2# 先算括号内 10313再算 2**24最后算 13*452print(result)# 输出: 528. 总结本文详细梳理了 Python 中的五大类运算符及其子类算数运算符用于基础数学计算。赋值运算符用于为变量赋值或进行复合赋值。比较运算符用于比较值返回布尔结果。逻辑运算符用于组合条件逻辑。其他运算符包括身份运算符、成员运算符和位运算符。理解并熟练运用这些运算符是构建 Python 程序逻辑的基石。在实际编码中请时刻注意运算符的优先级并善用括号来提升代码的可读性和准确性。