繁体   English   中英

如何提取最高值并打印出最高值键? 使用for或while循环

[英]How do i extract the highest value and print out the highest value key? Using for or while loop

使用for或while循环,如何提取最大值并打印出最大值键?

data = {
    'Jeremy':73284, 
    'Hansel':8784.3, 
    'Uee':9480938.2, 
    'Seolhyun':984958.3, 
    'Ketsuno Ana':24131, 
    'Trump':45789
}

1.使用for或while循环(按要求)

>>> data = {'Jeremy': 73284, 'Hansel': 8784.3, 'Uee': 9480938.2, 'Seolhyun': 984958.3, 'Ketsuno Ana': 24131, 'Trump': 45789}
>>> 
>>> max_k = None
>>> max_v = None
>>> for k, v in data.items():
...     if max_v is None or v > max_v:
...         max_v = v
...         max_k = k
... 
>>> print(max_k)
Uee

2.使用max()

Python 2

>>> import operator
>>> data = {'Jeremy':73284, 'Hansel':8784.3, 'Uee':9480938.2, 'Seolhyun':984958.3, 'Ketsuno Ana':24131, 'Trump':45789}
>>> max(data.iteritems(), key=operator.itemgetter(1))[0]
'Uee'

Python 3

>>> import operator
>>> data = {'Jeremy':73284, 'Hansel':8784.3, 'Uee':9480938.2, 'Seolhyun':984958.3, 'Ketsuno Ana':24131, 'Trump':45789}
>>> max(data.items(), key=operator.itemgetter(1))[0]
'Uee'

编辑

使用max()更容易

>>> data = {'Jeremy': 73284, 'Hansel': 8784.3, 'Uee': 9480938.2, 'Seolhyun': 984958.3, 'Ketsuno Ana': 24131, 'Trump': 45789}
>>> max(data)
'Uee'

您可以通过遍历各个键来找到最大值,同时在字典中保存最高值的键。 最后,打印密钥及其相应的值。

这样的事情会起作用。 它在python3带有for循环。

data = { 'Jeremy':73284, 'Hansel':8784.3, 'Uee':9480938.2, 'Seolhyun':984958.3, 'Ketsuno Ana':24131, 'Trump':45789 }
maximum = 'Jeremy'
for key in data.keys():
    if data[key] > data[maximum]:
        maximum = key
print('Maximum:'+maximum+", the value is:"+str(data[maximum]))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM