2

因此,当在函数中输入随机数字列表时,我想切换具有最大元素的第一个元素。然后返回新列表。

def jumpMaximum(numList):
    max2=max(numList)
    a,b = int(numList[-len(numList)]),max
    numList[a],numList[b] = numList[b],numList[a]
    return numList

我似乎无法弄清楚是什么导致此失败并且不返回列表。我需要做的就是取最大的数字并用第一个数字切换它。

4

2 回答 2

2

你可以试试这个:

index_max = a.index(max(a))
a[index_max], a[0] = a[0], a[index_max]
于 2013-10-27T19:09:10.347 回答
0

调试您在此处发布的代码,我可以看到两个错误:

  • 您已分配maxb. Butmax是一个内置函数,不会被接受为 python 列表的有效索引。但我想这只是一个错字。
  • 使用ab作为列表索引,当它们分别是列表中的第一个和最大元素时。

这是调试后的代码:

def jumpMaximum(numList):
 max2=max(numList)
 a,b = numList.index(int(numList[-len(numList)])),numList.index(max2)
 numList[a],numList[b] = numList[b],numList[a]
 return numList
于 2013-10-27T19:47:09.097 回答