Python:在python中设置两个用逗号分隔的变量值

Python: setting two variable values separated by a comma in python

做python有什么区别:

a, b = c, max(a, b)

a = c
b = max(a, b)

将两个变量赋值设置在同一行有什么作用?

你的两个片段做不同的事情:尝试 abc 等于 789分别。

第一个代码段将三个变量设置为 989。也就是说,max(a, b)是在之前计算出来的a赋值给c的值。本质上,a, b = c, max(a, b) 所做的就是将两个值压入堆栈;变量 ab 然后在弹出后被分配给这些值。

另一方面,运行 第二个代码段将所有三个变量设置为 9。这是因为 a 在函数调用 max(a, b) 之前被设置为指向 c 的值。

他们是不同的。第二个就像做

a, b = c, max(c, b)

因为您在执行 b = max(a, b) 之前将 c 分配给 a。而第一个是使用 a 的旧值来计算它。