在Python中的变量赋值、多重赋值

云课堂学Python 2024-04-05 17:36:33

在 Python 中,“=”运算符用于为变量赋值。

a = 100b = 200print(a) # 输出:100print(b) # 输出:200一行中为多个变量赋值

可以通过用逗号分隔多个变量来为多个变量分配多个值。

a, b = 100, 200print(a) # 输出:100print(b) # 输出:200

也可以在一行中为三个以上的变量赋值。

a, b, c = 100, 200, 'abc'print(a) # 输出:100print(b) # 输出:200print(c) # 输出:abc

当左侧只有一个变量,右侧的值将作为元组分配给该变量。

a = 100, 200print(a) # 输出:(100, 200)print(type(a)) # 输出:<class 'tuple'>

如果左边的变量数量与右边的个数不匹配,则会出现 ValueError。可以通过在变量名称前面加上“*”前缀来将剩余值赋值为列表。

a, b = 100, 200, 300 # 输出:ValueError: too many values to unpacka, b, c = 100, 200 # 输出: ValueError: not enough values to unpacka, *b = 100, 200, 300print(a) # 输出:100print(type(a)) # 输出:<class 'int'>print(b) # 输出:[200, 300]print(type(b)) # 输出:<class 'list'>*a, b = 100, 200, 300print(a) # 输出:[100, 200]print(type(a)) # 输出:<class 'list'>print(b) # 输出:300print(type(b)) # 输出:<class 'int'>一行中将相同的值分配给多个变量

可以一行中通过连续使用“=”将相同的值分配给多个变量。这在初始化具有相同值的多个变量时很有用。

a = b = 100print(a) # 输出:100print(b) # 输出:100

连续使用“=”,将同一可变对象分配给所有变量后,如果更改某一个变量元素的值或添加新元素,则这些更改也将反映在其他变量中。

a = b = [100, 200]a[0] = 300print(a) # 输出:[300, 200]print(b) # 输出:[300, 200]b = [100, 200]a = ba[0] = 300print(a) # 输出:[300, 200]print(b) # 输出:[300, 200]

如果要单独处理可变对象,则需要单独为变量赋值。相关信息请查看“浅拷贝和深拷贝”相关文章。

a = [100, 200]b = [100, 200]a[0] = 300print(a) # 输出:[300, 200]print(b) # 输出:[100, 200]

文章创作不易,如果您喜欢这篇文章,请关注、点赞并分享给朋友。如有意见和建议,请在评论中反馈。

0 阅读:18

云课堂学Python

简介:感谢大家的关注