从元素本身生成索引的数组的Python交换不';行不通

从元素本身生成索引的数组的Python交换不';行不通,python,arrays,swap,Python,Arrays,Swap,下面的python交换不起作用,问题是为什么 nums[i], nums[nums[i]-1] = nums[nums[i]-1], nums[i] 下面是一个示例来说明该语句不起作用的原因 >>> nums=[3,2,3,4,6,5] >>> i=4 >>> nums[i],nums[nums[i]-1] = nums[nums[i]-1], nums[i] >>> nums [3, 2, 3, 4, 6, 5]

下面的python交换不起作用,问题是为什么

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


下面是一个示例来说明该语句不起作用的原因

>>> nums=[3,2,3,4,6,5]
>>> i=4
>>> nums[i],nums[nums[i]-1] = nums[nums[i]-1], nums[i]
>>> nums
[3, 2, 3, 4, 6, 5]
当i为4时,交换的右侧部分变成一个元组(5,6),它首先将5赋值给nums[4],然后nums[nums[i]-1]实际上是nums[5-1],它返回到nums[4],并被赋值为6


所有赋值都发生在索引4上,因此根本不进行交换

什么是输入
nums
i
,您希望得到什么结果?