软件测试/测试开发/人工智能丨赋值运算符

104 阅读3分钟

赋值运算符是使用=为运算符号,将运算符左侧的数据或表达式的结果,保存到运算符左侧的标识符中。

在使用赋值运算符时,运算符右侧可以是任意类型的数据,但左侧必须是一个变量,否则会报错。

除普通的赋值运算符外,赋值运算符还可以和算术运算符组合成为复合赋值运算符。

Python 中提供的赋值运算符如下表所示:

图片

普通赋值运算符(=)

将等号左侧的数据保存到等号右侧的变量中

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)

人工智能测试开发训练营 - 霍格沃兹测试开发学社.png