在这里,我的问题是我有一个元组列表,我需要找出谁得分最高以及相应的球员姓名。
样本输入:
l=[
('ram' ,16),
('sara' ,13),
('akhil',24),
('vinay',24)
]
样本输出:
akhil 24
说明:
首先,我根据元组列表中的第二个元素对数据进行了排序。 在所有玩家中,“ akhil”和“ vinay”的得分相同,因此两者 人员播放器“ akhil”首先从字典或词典顺序开始,所以我打印了“ akhil”。
谢谢。
答案 0 :(得分:0)
尝试一下。
from collections import OrderedDict
l=[('ram',16),('sara',13),('akhil',24),('vinay',24)]
a = {}
for i in l:
a[i[0]]=i[1]
a = OrderedDict(sorted(a.items(), key=lambda t: t[0]))
print max(a.iterkeys(), key=lambda k: a[k]),a[max(a.iterkeys(), key=lambda k: a[k])]
答案 1 :(得分:0)
l = [('ram',16),('sara',13),('akhil',24),('vinay',24)]
l1 = []
l.sort(key = lambda x:x [1])
print(l)
对于范围在(1,len(l))中的i:
if(l[i-1][1]==l[i][1]):
l1.append(l[i][0])
l1.append(l[i-1][0])
z=l[i-1][1]
l1.sort()
print(l1 [0],z)