【问题标题】:Getting the key to the maximum component of a tuple in a dictionary of tuples获取元组字典中元组最大分量的键
【发布时间】:2011-10-03 02:43:39
【问题描述】:

我有一个字典,其组件都是 2 元组(所有整数),我想找到具有最大第二个组件的元组的键。如何在 Python 2.6 中做到这一点?

【问题讨论】:

    标签: python dictionary tuples max


    【解决方案1】:

    以下将执行此操作(其中d 是您的字典):

    max(d.items(), key=lambda(k,v):v[1])[0]
    

    在这个解决方案中,关键(如果你原谅双关语)是使用可选的key 参数到max

    【讨论】:

    • 你能解释一下 k 和 v 是什么吗?如果它们是 3 元组,但我仍然想在第二个中最大化,我该怎么做?
    • @Double AA:kv 是字典条目的键和值,因此 v 被分配了整个元组。如果 dict 包含 3 元组并且您希望在第二个组件上最大化,则完全相同的代码将起作用。
    【解决方案2】:

    aix 的回答很好。不过,如果您愿意,也可以在不使用 lambda 的情况下达到同样的效果:

    import operator
    m = max(d.iteritems(), key=operator.itemgetter(1))[0]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-28
      • 2011-07-26
      相关资源
      最近更新 更多