python怎么知道列表中最大的元素是第几个

如题所述

第1个回答  2021-02-02

    l = [1,2,3]

    maxnum = max(l)

    print(l.index(maxnum))

    index函数只会返回列表里第一个匹配的值,如果最大值在列表里有多个,则无法全部查询到

    一个冒泡排序的思路,逐一对比,并记住当前最大值的下标,可以得到最大值的多个下标

l = [1,2,3,0,3]

indeiesDict = {}

maxnum = 0

for i in range(len(l)):

    if i > 0 :

        if l[i] >= l[i-1]:

            maxnum = l[i]

            index = i

        else:

            maxnum = l[i-1]

            index = i-1

        if indeiesDict.get(maxnum):

            indeiesDict[maxnum].add(index)

        else:

            indeiesDict[maxnum] = set([index])

print(maxnum,indeiesDict[maxnum])

相似回答