在python列表中交换元素

在python列表中交换元素,第1张

在python列表中交换元素

Python将结果 从左到右 存储在多个目标中,并按该顺序执行分配目标表达式

因此,您的第二个版本基本上可以归结为:

temp = list[list.index(max(list))],list[0]list[0] = temp[0]list[list.index(max(list))] = temp[1]

请注意,更改 后将*

list.index(max(list))
执行,这就是您刚刚存储最大值的地方。 *
list[0]

这在
Assignment语句

文档中记录:

  • 如果目标列表是目标的逗号分隔列表:该对象必须是可迭代的,并且具有与目标列表中存在目标的项目数量相同的项目,并且这些项目 从左到右
    配给相应的目标。

从那里开始,好像每个目标都是一个目标,因此以下文档从左到右适用于每个目标:

将对象分配给单个目标的定义如下。

[…]

  • 如果目标是预订:评估引用中的主表达式。它应该产生可变的序列对象(例如列表)或映射对象(例如字典)。接下来,评估下标表达式。

如果您更改分配顺序,则代码将起作用:

list[list.index(max(list))], list[0] = list[0], list[list.index(max(list))]

因为现在

list[list.index(max(list))]
分配给 first



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5650348.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存