我想知道是否有更快的方法将其设置在下面
Max_age = 21
Suzy_age = 21
Mia_age = 21
为什么不写
Max_age and Suzy_age and Mia_age = 21
甚至
Max_age = Suzy_age = Mia_age = 21
我是python的新手,这种代码看起来真的很直观,但是不知有没有类似的代码?我错了吗 ?请告诉我我错了。
第一个无效
a and b and c = 1
将导致错误,因为a and b
是一个二进制表达式,它是一个值,而不是变量,所以您无法为其分配。
第二个有效
a = b = c = 1
将按顺序运行
a = (b = (c = 1))
因为分配是右关联的。分配c = 1
的计算结果为1
,因此将其分配给b
,依此类推。
但是,在python中,通常编写多个任务,例如
a, b, c = 1, 2, 3
这称为元组拆包
是否比每行分配一个更好,这取决于样式和上下文。
您可以这样做:
Max_age, Suzy_age, Mia_age = 21, 21, 21
Max_age, Suzy_age, Mia_age = [21] * 3