赋值运算符
赋值运算符
赋值运算符是使用 =
做为运算符号,将运算符右侧的数据或表达式的结果,保存到运算符左侧的标识符中。
在使用赋值运算符时,运算符右侧可以是任意类型的数据,但左侧必须是一个变量,否则会报错。
除普通的赋值运算符外,赋值运算符还可以和算术运算符组合成为复合赋值运算符。
Python 中提供的赋值运算符如下表所示:
运算符 | 描述 | 实例 |
---|---|---|
= |
简单的赋值运算符 | c = a + b 将 a + b 的运算结果赋值为 c |
+= |
加法赋值运算符 | c += a 等效于 c = c + a |
-= |
减法赋值运算符 | c -= a 等效于 c = c - a |
*= |
乘法赋值运算符 | c *= a 等效于 c = c * a |
/= |
除法赋值运算符 | c /= a 等效于 c = c / a |
%= |
取模赋值运算符 | c %= a 等效于 c = c % a |
**= |
幂赋值运算符 | c **= a 等效于 c = c ** a |
//= |
取整除赋值运算符 | c //= a 等效于 c = c // a |
普通赋值运算符 =
将等号左侧的数据保存到等号右侧的变量中
a = 1
s = "Hello"
sum = 1 + 2
赋值运算符还支持同时定义多个变量
a, b, c = 1, 2, 3
print(a, b, c)
复合赋值运算符 +=
+=
运算符是算术运算符 +
与 赋值运算符 =
的组合形式,用来简化计算赋值操作。
表达式会将等号左侧变量中的数据与等号右侧的值进行加法计算,然后将计算结果重新保存到等号左侧的变量中。
a = 10
a += 20 # 相当于表达式 a = a + 20
print(a)
复合赋值运算符 -=
-=
运算符是算术运算符 -
与 赋值运算符 =
的组合形式,用来简化计算赋值操作。
表达式会将等号左侧变量中的数据与等号右侧的值进行减法计算,然后将计算结果重新保存到等号左侧的变量中。
a = 10
a -= 20 # 相当于表达式 a = a - 20
print(a)
复合赋值运算符 *=
*=
运算符是算术运算符 *
与 赋值运算符 =
的组合形式,用来简化计算赋值操作。
表达式会将等号左侧变量中的数据与等号右侧的值进行乘法计算,然后将计算结果重新保存到等号左侧的变量中。
a = 10
a *= 20 # 相当于表达式 a = a * 20
print(a)
复合赋值运算符 /=
/=
运算符是算术运算符 /
与 赋值运算符 =
的组合形式,用来简化计算赋值操作。
表达式会将等号左侧变量中的数据与等号右侧的值进行除法计算,然后将计算结果重新保存到等号左侧的变量中。
a = 10
a /= 20 # 相当于表达式 a = a / 20
print(a)
复合赋值运算符 //=
//=
运算符是算术运算符 //
与 赋值运算符 =
的组合形式,用来简化计算赋值操作。
表达式会将等号左侧变量中的数据与等号右侧的值进行整除计算,然后将计算结果重新保存到等号左侧的变量中。
a = 10
a //= 20 # 相当于表达式 a = a // 20
print(a)
复合赋值运算符 %=
%=
运算符是算术运算符 %
与 赋值运算符 =
的组合形式,用来简化计算赋值操作。
表达式会将等号左侧变量中的数据与等号右侧的值进行取模计算,然后将计算结果重新保存到等号左侧的变量中。
a = 10
a %= 20 # 相当于表达式 a = a % 20
print(a)
复合赋值运算符 **=
**=
运算符是算术运算符 **
与 赋值运算符 =
的组合形式,用来简化计算赋值操作。
表达式会将等号左侧变量中的数据与等号右侧的值进行幂运算,然后将计算结果重新保存到等号左侧的变量中。
a = 10
a **= 20 # 相当于表达式 a = a ** 20
print(a)
复合赋值运算符使用注意
当使用复合赋值运算符时,计算过程上看似对运算符进行展开后运算,而实际执行过程中,复合赋值运算符并不会进行展开操作。
特别是复合赋值运算符和其它运算符一起使用时,要特别注意。
n = 2
# 该表达式结果为 14, 并不是10
# 如果一定要展开,可以理解展开后为 n = n * ( 3 + 4)
n *= 3 + 4
print(n)