python运算符 - 教程

一、Python 运算符核心分类(附用法示例)

Python 运算符主要分为 7 大类,以下是高频使用的核心运算符及实战示例:

1. 算术运算符(最基础,用于数值计算)
运算符作用示例结果
+加法 / 字符串拼接5+3 / "Hello"+"Python"8 / "HelloPython"
-减法10-46
*乘法 / 字符串重复4*5 / "a"*320 / "aaa"
/除法(返回浮点数)10/33.3333333333333335
//整除(向下取整)10//3 / -10//33 / -4
%取模(求余数)10%3 / 10%-31 / -2
**幂运算2**3 / 10**0.58 / 3.1622776601683795

python

运行

# 算术运算符综合示例
a = 10
b = 3
print(f"加法:{a+b}")       # 13
print(f"除法:{a/b}")       # 3.3333333333333335
print(f"整除:{a//b}")      # 3
print(f"取模:{a%b}")       # 1
print(f"幂运算:{a**b}")    # 1000
print(f"字符串重复:{'py'*2}") # pypy
2. 赋值运算符(给变量赋值,=` 是基础,结合算术运算符可简化代码)
运算符等价写法示例结果
=-x=5x=5
+=x = x + yx=5; x+=3x=8
-=x = x - yx=5; x-=3x=2
*=x = x * yx=5; x*=3x=15
/=x = x / yx=5; x/=3x≈1.6667
//=x = x // yx=5; x//=3x=1
%=x = x % yx=5; x%=3x=2

python

运行

# 赋值运算符简化代码示例
num = 10
num += 5  # 等价于 num = num + 5
print(num)  # 15
num *= 2    # 等价于 num = num * 2
print(num)  # 30
3. 比较运算符(返回布尔值True/False,用于条件判断)
运算符作用示例结果
==等于(判断值是否相等)5==5 / "abc"=="Abc"True / False
!=不等于5!=3True
>大于10>5True
<小于10<5False
>=大于等于10>=10True
<=小于等于10<=5False

⚠️ 易错点:不要把==写成==是赋值,==是判断相等)。

python

运行

# 比较运算符示例(常用于if条件)
age = 18
print(age >= 18)  # True
if age == 18:
    print("已成年")  # 执行该语句
4. 逻辑运算符(组合多个条件,返回布尔值)
运算符作用(短路求值)示例结果
and与:全 True 才 TrueTrue and False / 5>3 and 10<20False / True
or或:有一个 True 就 TrueTrue or False / 5>3 or 10>20True / True
not非:取反not True / not (5>3)False / False

python

运行

# 逻辑运算符短路求值示例(效率优化)
# and:第一个条件为False,直接返回False,不执行第二个条件
print(False and (1/0))  # False(不会触发除零错误)
# or:第一个条件为True,直接返回True,不执行第二个条件
print(True or (1/0))   # True(不会触发除零错误)
5. 成员运算符(判断元素是否在序列中)
运算符作用示例结果
in判断元素在序列中3 in [1,2,3] / "py" in "python"True / True
not in判断元素不在序列中4 not in [1,2,3]True

python

运行

# 成员运算符示例
lst = [1, 2, 3, 4]
print(5 in lst)      # False
print(3 not in lst)  # False
str1 = "hello"
print("h" in str1)   # True
6. 身份运算符(判断两个变量是否指向同一对象)
运算符作用示例结果
is判断内存地址相同a=10; b=10; a is bTrue
is not判断内存地址不同a=[1]; b=[1]; a is not bTrue

⚠️ 易错点:is 对比的是内存地址== 对比的是

python

运行

a = [1,2,3]
b = [1,2,3]
print(a == b)   # True(值相等)
print(a is b)   # False(内存地址不同)
7. 位运算符(操作二进制位,高频用于底层 / 性能优化,新手可先了解)
运算符作用示例(二进制)结果(十进制)
&按位与6(0110) & 3(0011)2(0010)
``按位或`63`7(0111)
^按位异或6 ^ 35(0101)
~按位取反~6-7
<<左移(乘以 2)6 << 112
>>右移(除以 2)6 >> 13

二、运算符优先级(核心规则)

当多个运算符同时出现时,Python 按以下优先级执行(从高到低):

  1. 幂运算 **
  2. 按位取反 ~
  3. 算术运算符(*//////% > +/-
  4. 位运算符(<</>> > & > ^ > |
  5. 比较运算符(==/!=/>/</>=/<=
  6. 身份运算符(is/is not
  7. 成员运算符(in/not in
  8. 逻辑运算符(not > and > or

实用技巧:不确定优先级时,用括号()强制指定执行顺序(可读性更高):

python

运行

# 优先级示例:加括号更清晰
print(10 + 5 * 2)    # 20(先乘后加)
print((10 + 5) * 2)  # 30(先加后乘)

三、新手高频易错点

  1. 除法差异:/ 返回浮点数,// 向下取整(负数需注意:-10//3 = -4 而非 -3);
  2. == vs is:前者比 “值”,后者比 “内存地址”,不可混用;
  3. 逻辑运算符短路:and/or 会提前终止计算(可利用此特性优化代码);
  4. 字符串 / 列表的算术运算:仅+(拼接)和*(重复)可用,-// 会报错。

总结

  1. Python 运算符核心分为 7 类,其中算术、赋值、比较、逻辑运算符是日常开发高频使用的核心;
  2. 优先级可通过括号()简化记忆,无需死记硬背;
  3. 重点区分==is///的差异,避免基础错误。
posted @ 2026-02-13 11:11  yangykaifa  阅读(14)  评论(0)    收藏  举报