在列表中查找最大化函数的元素的更Pythonic方式
好的,我有这个简单的函数,它可以找到列表中使另一个正函数的值最大化的元素。
def get_max(f, s):
# f is a function and s is an iterable
best = None
best_value = -1
for element in s:
this_value = f(element)
if this_value > best_value:
best = element
best_value = this_value
return best
但我发现它对于它所做的简单工作来说很长。事实上,它让我想起了Java(brrrr)。 谁能告诉我一种更Pythonic和更干净的方法来做到这一点?
谢谢!
曼努埃尔
OK, I have this simple function that finds the element of the list that maximizes the value of another positive function.
def get_max(f, s):
# f is a function and s is an iterable
best = None
best_value = -1
for element in s:
this_value = f(element)
if this_value > best_value:
best = element
best_value = this_value
return best
But I find it very long for the simple work it does. In fact, it reminds me of Java (brrrr).
Can anyone show me a more pythonic and clean way of doing this?
Thanks!
Manuel
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)