你如何计算列表中有多少个最大值?

时间:2015-12-04 04:16:53

标签: list python-2.7 indexing max

假设我有以下列表:

list1=[1,2,4,6,8,3,2,5,8,4,2]

我想返回整数2,因为8是最大值,列表中有两个8。我怎样才能做到这一点?编辑:我还想假设列表中的最大数字可以是任何负数或非负数,包括零。

3 个答案:

答案 0 :(得分:1)

你可以使用这样的东西:

list1=[1,2,4,6,8,3,2,5,8,4,2]
print list1.count(max(list1))

答案 1 :(得分:0)

ans = 0
mx = 0
for x in list1:
    if x > mx:
        mx = x
        ans = 1
    elif x == mx :
        ans += 1

print ans

假设最大数字大于0,否则您应该使用负无穷大

来初始化mx

答案 2 :(得分:0)

>>> list1=[1,2,4,6,8,3,2,5,8,4,2]
>>> x = max(list1)
>>> l = []
>>> for i in list1:
    if i == x:
        l.append(i)


>>> l
[8, 8]
>>> len(l)
2

>>> list1=[1,2,4,6,8,3,2,5,8,4,2]
>>> x = max(list1)
>>> result = len(filter(lambda i: i == x, list1))
>>> result
2