繁体   English   中英

从元组列表中选择特定元组的大多数Python方法

[英]Most Pythonic Way to Select Particular Tuple from List of Tuples

假设我有一个元组列表: pairs = [(4,5),(2,6),(6,9),(8,7),(1,1)]

我有一个函数def m(pair): return pair[0]**2 + pair[1]**2

我试图找到m返回最大输出的pairs元素。 具体来说,我想尽可能地用Python做到这一点。

对我来说很明显,我可以通过pairs循环和一个变量来执行此操作,以存储看到的最大收益货币对,但这感觉并不雅致。 我觉得这应该通过列表理解来完成。 也很明显,我可以通过声明temp = [m(p) for p in pairs]然后选择pairs[temp.index(max(temp))]来找到想要的pairs[temp.index(max(temp))] ,但我不想创建只要是成对的清单,另一个清单-同样,这感觉不佳。

寻找pythonic建议。

最Python化的方法:

result = max(pairs, key=m)

你不能吗

max([成对的p的m(p)])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM