def max_even_list(list):
if len(list) == 1:
if list[0] % 2 == 0:
return list[0]
else:
if list[0] % 2 == 0:
return max(list[0], max_even_list(list[1:]))
else:
return max_even_list(list[1:])
我收到一个错误:TypeError:'>;'在'NoneType'和'int'的实例之间不支持'gt;'
有人能帮我修复这个返回列表中最大偶数的代码吗
Tags:
您只需关注3种情况:
-infinity
xs[0]
)是偶数时,返回xs[0]
的max
和列表其余部分的max_even
max_even
(xs[1:]
)这只需花费很少的精力就可以将其编码到python程序中
当
len(list)
是1
,但list[0] % 2
不是0时,您不返回任何内容。所以如果list的最后一个元素是奇数,那么这个代码就不能工作了。在如果
len(list)
是1
,但list[0] % 2
不是0,则可以返回-infinity,如:FWIW,这是另一种获得最大偶数的方法。在
参考号:Python ^{}
相关问题 更多 >
编程相关推荐