这个命名变量如何工作?

时间:2016-04-30 02:50:46

标签: python

我是python的初学者,我找到了一种命名变量的奇怪方式,根本无法理解。

有人可以帮助我吗

x = 1
n = [1, 1, 3]
for i in n:
    y, x = x, i

我想了解这一行y, x = x, i是什么意思?

1 个答案:

答案 0 :(得分:5)

它被称为元组解包。右边只是一个元组;当没有歧义时,像(x, i)这样的表达式中的括号是可选的。左侧是与右侧相应值相关联的一系列名称。该陈述相当于

tmp = x, i
y = tmp[0]
x = tmp[1]

在分配之前,右侧被完全评估为元组,这意味着您可以编写类似

的代码
a, b = b, a

交换值而不需要临时变量。