查找并显示名称列表的最高记录

时间:2016-09-01 06:52:55

标签: python

我是Python的新手。 我被赋予了编写Python程序的任务,以读取由人名和高度组成的名单。

编码的任何建议或想法,以找出最高的高度并显示记录?

例如,最高身高为180,结果将显示" Adam,180"

3 个答案:

答案 0 :(得分:0)

我们可以使用operator.itemgetter

import operator
stats = {'Dave':179, 'Adam':180, 'Daniel': 170}
max(stats.items(), key=operator.itemgetter(1))

答案 1 :(得分:0)

names = {'jason': 5.8, 'daniel': 5.0, 'rizwan': 6}

>>> sorted(names.items(), key=lambda value: value[1], reverse=True)
[('rizwan', 6), ('jason', 5.8), ('daniel', 5.0)]

>>> max(sorted(names.items(), key=lambda value: value[1]))
('rizwan', 6)
>>> min(sorted(names.items(), key=lambda value: value[1]))
('daniel', 5.0)

答案 2 :(得分:0)

如果您有单独的列表:

names  =  ['alireza','sarah','maryam','muhammad']
heights = [180,172,178,182]
print(names[heights.index(max(heights))])

如果你想使用字典:

names = {'alireza':180,'sarah':172,'maryam':178,'muhammad':182}

max(names.keys(), key=names.get)

如果你想使用2d列表:

names = [['alireza',180],['sarah',172],['maryam',178],['muhammad',182]]
heights = list(zip(*names))[1]
print(names[heights.index(max(heights))][0])