我注意到在python代码中你可以做类似的事情:
a=0
b=1
a,b=b,a
print(a,b)
输出(a = 1,b = 0)(即每个变量的分配与最后一次分配无关)。有没有办法在MATLAB中做类似的事情?
很抱歉,如果这是一个非常简单的问题,但我一直试图找到一个干净的答案,现在有一段时间没找到。
答案 0 :(得分:5)
答案 1 :(得分:2)
使用任何语言的临时变量始终可以做到这一点。 Python的解包方法只是简化开发人员生活的一点点语法糖:)
a = 0
b = 1
tmp = a
a = b
b = tmp
print(a,b)
无论如何,它并不神奇,Python字节代码可能会使用临时变量实现排列。 (有没有临时变量的技术,但是为了清楚起见,使用一个:p)