gpt4 book ai didi

python - 元组、最大值和干净迭代

转载 作者:太空宇宙 更新时间:2023-11-04 09:11:14 26 4
gpt4 key购买 nike

这更多是出于好奇,因为我的作品有效。实现这个的“最干净”的方法是什么?给定一个元组对列表,如 [(Object, int), (Object1, int1), ... ],找到最大的 int 并返回与该值关联的 int 和对象。

我这样做了“简单的出路”:

bestObject, bestVal = None, 0
for i in range(len(tuple_list)):
obj, val = tuple_list[i]
if val > bestVal:
bestObject, bestVal = obj, val
return bestObject, bestValue

可以做得更好吗?

最佳答案

max 函数提供了一个key 参数,您可以在其中准确指定要在比较中使用的内容。例如:

In [1]: class MyObject(object):
...: def __init__(self, a):
...: self.a = a
...:

In [2]: a = MyObject('something')

In [3]: b = MyObject('something else')

In [4]: c = MyObject('another thing??')

In [5]: tups = [(a, 1), (b, 5), (c, 2)]

In [6]: max(tups, key=lambda x: x[1])
Out[6]: (<__main__.MyObject at 0x26c17d0>, 5)

关于python - 元组、最大值和干净迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14881162/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com