在Python中,+=
是一个复合赋值运算符,用于简化“先运算后赋值”的操作,支持数字累加、字符串拼接及列表扩展等场景。其核心作用是将变量当前值与右侧值相加后重新赋值给变量,例如x += 3
等价于x = x + 3
,既提升代码简洁性,又增强可读性。
-
基本语法与等价形式
+=
的通用写法为变量 += 值
,实际执行分两步:先计算变量与值的和,再将结果赋给变量。例如:python复制
total = 10 total += 5 # 等同于 total = total + 5 print(total) # 输出15
-
多数据类型支持
- 数值运算:适用于整型、浮点型等,如
count += 1
实现计数器自增。 - 字符串拼接:如
s = "Hi"; s += "!"
生成"Hi!"
。 - 列表扩展:
list1 += [4,5]
实际调用extend()
方法,将元素追加到原列表末尾。
- 数值运算:适用于整型、浮点型等,如
-
与普通赋值的性能差异
在循环或重复操作中,+=
能减少临时变量创建,提升效率。例如累加求和时:python复制
result = 0 for num in [1, 2, 3]: result += num # 比 result = result + num 更高效
-
注意事项
- 变量需初始化:未赋值的变量直接使用
+=
会报错。 - 类型兼容性:如数字与字符串混合操作可能引发
TypeError
。 - 不可变对象特性:对元组等不可变类型,
+=
会生成新对象而非修改原值。
- 变量需初始化:未赋值的变量直接使用
掌握+=
的灵活运用能显著提升代码质量,尤其适合循环累加、动态拼接等场景。建议通过实际练习熟悉其特性,并注意避免未初始化或类型冲突等常见问题。