请问这个式子中(z, x, y) = (y, z, x)是什么意思呢?

又是怎么得出x=(0,1,2) y=(6,5,4) z=(3,2,1)的呢?

a = (6,5,4), (3,2,1), (0,1,2)
x,y,z = a
(z, x, y) = (y, z, x)

对应位置交换值
可以输出看看执行效果。

a = (6,5,4), (3,2,1), (0,1,2)
x,y,z = a
print(str(x)+" "+str(y)+" "+str(z))
(z, x, y) = (y, z, x)
print(str(x)+" "+str(y)+" "+str(z))

img

将对应位置的变量进行赋值,如赋值后的z值变为赋值前y的值
首先将x,y,z分别指向a中的三个元组,然后将他们的指向交换,

img

有帮助望采纳~

a = (6,5,4), (3,2,1), (0,1,2) 是把三个一维元组封装成一个二维元组
a 等于是 ((6,5,4), (3,2,1), (0,1,2))
x,y,z = a 是把a二维元组的元素拆开成三个一维元组,并顺序的赋给=号左边的x,y,z三个变量。
之后x=(6,5,4) y=(3,2,1) z=(0,1,2)
(z, x, y) = (y, z, x) 是先把=号右边的(y, z, x)封装成((3,2,1),(0,1,2),(6,5,4)) 这样的二维元组
再把这个二维元组的元素拆开,顺序的赋给=号左边的三z, x, y三个变量。
就是交换x y z的值
y的值传给z z的值传给x x的值传给y
变成x=(0,1,2) y=(6,5,4) z=(3,2,1)

a = (6,5,4), (3,2,1), (0,1,2)
x,y,z = a得到x为6,5,4
y为3,2,1
z为0,1,2
(z, x, y) = (y, z, x) 表示
z为原来的y也就是3 2 1
x为原来的z也就是0 1 2
z为原来的x也就是6 5 4

交换

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632