今天碰到了python和其他语言不同的问题:赋值语句 x,y,z=1,2,3,执行 z,x,y=y,z,x 后,x、y、z 中分别含有什么值?
我想的是 x=2 y=2 z=2
可调试后应该是:x=3 y=1 z=2
因为python在赋值之前已经事先对x和y的新值做了计算。
在C或其他语言中,交换两个值:
/* C语言中两个变量交换 */
tmp = x;
x = y;
y = tmp;
在python中直接交换即可:
x,y = 1,2
x,y = y,x