python zip,lambda,map函数
觉得有用的话,欢迎一起讨论相互学习~Follow Me
感谢莫烦老师
详情
zip
- 通常用于将两个列表合并在一起以同时进行迭代遍历
- 注意:直接使用zip输出结果为<zip at 0x1d72cf30bc8>,要配合list一起使用
a = [1, 2, 3]
b = [4, 5, 6]
zip(a,b)
# <zip at 0x1d72cf30bc8>
print(list(zip(a, b))) # [(1, 4), (2, 5), (3, 6)]
print(list(zip(a, a, b))) # [(1, 1, 4), (2, 2, 5), (3, 3, 6)]
zip配合迭代器一起使用
for i, j in zip(a, b):
print(i/2, j*2)
# 0.5 8
# 1.0 10
# 1.5 12
zip多个元素
print(list(zip(a, a, b))) # [(1, 1, 4), (2, 2, 5), (3, 3, 6)]
lambda
- 主要用途是定义比较简单的方程
def f1(x, y):
return x + y
f2 = lambda x, y: x + y
print(f1(1, 2)) # 3
print(f2(1, 2)) # 3
map
- map 是将值和函数封装起来进行操作,并且和zip,lambda,一样只有使用过list函数之后才能输出,否则输出的是一个object
print(list(map(f1, [1], [2]))) # x=1, y=2
print(list(map(f2, [2, 3], [4, 5]))) # [6, 8] 第一个表示将2+4 第二个表示3+5