在Python中破坏赋值顺序

app*_*ple 5 python

今天我遇到了这个表达:

(x,_),(y,_) = load_data()
Run Code Online (Sandbox Code Playgroud)

......我想知道作业的顺序是什么.


例如,x,x,x = 1,2,3设置x3我的测试,它实际设置x为1,2,而不是3?

它遵循的规则是什么?在第一个代码片段等更复杂的条件下会发生什么?

mil*_*ose 5

赋值语句文档的相关部分是:

如果目标列表是逗号分隔的目标列表,或者方括号中的单个目标:该对象必须是一个可迭代对象,其项目数与目标列表中的目标数相同,并且项目从左开始分配向右,到相应的目标。

(强调我的:这就是确定顺序的方式。)