Python - 字典和元组,在排序后检索密钥()

时间:2014-01-11 20:13:30

标签: python dictionary tuples sorted

例如,我有一本字典:

points_tuples = [(team1_id,team1_points),(team2_id,team2_points),(team3_id,team3_points)]

然后我使用sorted()方法按点排序:

sorted_tuple = sorted(periods_tuples,key=lambda team: team[1],reverse=True) 

我想获得第一名团队的团队ID,例如......

我该怎么做?

谢谢, ARA

3 个答案:

答案 0 :(得分:2)

这不是字典,它是元组列表!但您可以使用

访问第一个ID
top_score_id = sorted_tuple[0][0]

第一个零用于列表中的第一个元组,第二个零表示该元组中的第一个元组。

答案 1 :(得分:2)

如果您只检索第一名团队,则无需进行排序。使用max

>>> points_tuples = [
...     ('team1', 10),
...     ('team2', 30),
...     ('team3', 20),
... ]
>>> max(points_tuples, key=lambda team: team[1])
('team2', 30)
>>> max(points_tuples, key=lambda team: team[1])[0]
'team2'

答案 2 :(得分:1)

由于sorted_tuple返回按点排序的列表,然后你可以通过sorted_tuple[0]得到第一个元组.team id将是你的touple结构中该元组的第0个元素。

team_id = sorted_tuple[0][0]