from functools import reduce
# 通过def来定义函数
def add(x, y):
return x + y
print(add(1, 2))
# 定义匿名函数需要使用lambda关键字
func = lambda x, y: x + y
print(func(1, 2))
x = 1
y = 2
r = x if x > y else y
print(r)
# map函数
a = [1, 2, 3, 4, 5]
b = [1, 2, 3]
def square(x, y):
return x * x + y * y
print(list(map(square, a, b)))
# 或者用lambda表达式实现
print(list(map(lambda x, y: x * x + y * y, a, b)))
# reduce
print(reduce(lambda x, y: x + y, a, 10))
walk = [(0, 0), (2, 3), (2, -3), (-1, 5), (7, -1), (-2, 8)]
print(reduce(lambda x, y: (x[0] + y[0], x[1] + y[1]), walk, (5, 5)))
c = ['1', '2', '3', '4', '5']
print(reduce(lambda x, y: x + y, c, 'abc'))
# filter
print(list(filter(lambda x: x % 2 == 0, a)))
小于 1 分钟