Py学习  »  greg_data  »  全部回复
回复总数  1
3 年前
回复了 greg_data 创建的主题 » 在不使用python内置函数和if条件的情况下,在列表中计算5

简单的解决方案是:

len(filter(lambda y: y==5, x))

但这感觉非常接近使用计数。。。

如果你不应该使用 len ,这是一个使用函数式编程的好机会。

from functools import reduce
reduce(lambda _, a: a+1, filter(lambda y: y==5, x))

filter函数将只过滤符合条件(=5)的元素,reduce函数将做与计数相同的操作。