gpt4 book ai didi

Python 列表元素交换未按预期工作

转载 作者:行者123 更新时间:2023-12-05 07:09:21 25 4
gpt4 key购买 nike

我写了一个简单的代码,两个交换列表中的两个项目,使用非常基本的:

a, b = b, a

代码如下所示:

nums[i], nums[nums[i] - 1] = nums[nums[i] - 1], nums[i]

上述交换导致无限循环,其中项目在列表中重复,因此无法交换。但将其修改为以下工作:

nums[nums[i] - 1], nums[i] = nums[i], nums[nums[i] - 1]

交换是否因为交换变量的顺序而不起作用。

如果是这样,它的逻辑如何?我错过了什么?

最佳答案

def swap(index1, index2, list_):
a, b = list_[index1], list_[index2]
list_[index1], list_[index2] = b, a
return list_

可以使用这样的函数,在其中传入列表和要交换的项目的列表索引,然后它返回包含交换项目的列表。可能有更短的解决方案,但这绝对是一种做事方式

关于Python 列表元素交换未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61635677/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com