gpt4 book ai didi

python - 使用折叠的列表中最大的偶数

转载 作者:行者123 更新时间:2023-11-28 22:40:07 31 4
gpt4 key购买 nike

我想完成这个:

  • 构造一个函数,将列表作为参数并返回该列表中最大的偶数。
  • 使用 Python 中的“fold”函数来完成此操作

我认为它可能是这样的:

def fold(f, v, l):
for x in l:
v = f(v, x)
return v

def biggest_even_number(xs):
l = [i for i in xs if i % 2 == 0]
return fold(l)

我知道这是错误的,但我只是不知道如何设置它。我将如何使用“折叠”功能完成上述任务?

最佳答案

fold 函数看起来不错。你只需要用正确的参数调用它:

def biggest_even_number(xs):
l = [i for i in xs if i % 2 == 0]
return fold(max, float("-inf"), l)

如果不是作业,可以使用builtin reduce()基本上做同样的事情:

def biggest_even_number(xs):
l = [i for i in xs if i % 2 == 0]
return reduce(max, l, float("-inf"))

感谢@Steven Rumbalski ,对于任何试图找到序列最大值的人,您甚至不需要 reduce:

def biggest_even_number(xs):
return max(i for i in xs if i % 2 == 0)

关于python - 使用折叠的列表中最大的偶数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34057681/

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