【发布时间】:2023-01-31 01:07:14
【问题描述】:
我正在学习 Python 和 Java 的函数式编程。
我有一些 Java 代码可以从列表中找出双倍偶数的总和。
我想在 Python 中使用函数式编程来做同样的事情(即从列表中找到双偶数的总和)。就使用 filter()、map() 和 sum() 而言,什么是好的做法一起并且代码是可读的?
我用 Python 编写的内容(见下文)完成了这项工作,但可读性不是很好。
谢谢你的帮助!
# JAVA
import java.util.Arrays;
import java.util.List;
public class GFG {
public static void main(String[] args)
{
List<Integer> numbers
= Arrays.asList(11, 22, 33, 44,
55, 66, 77, 88,
99, 100);
System.out.println(
numbers.stream()
.filter(number -> number % 2 == 0)
.mapToInt(e -> e * 2)
.sum());
}
}
// OUTPUT: 640
# PYTHON
class GFG:
@staticmethod
def main():
numbers = [11, 22, 33, 44, 55, 66, 77, 88, 99, 100]
print(sum(map(lambda x: x * 2, (filter(lambda x: x % 2 == 0, numbers)))))
GFG.main()
# OUTPUT: 640
【问题讨论】:
标签: python functional-programming