lambda函数和map函数

lambda函数,简化了函数定义的书写形式,使代码更为简洁,但是使用自定义函数的定义方式更为直观,易理解

g = lambda x:x+1
#上面的lambda表达式相当于下面的自定义函数
def gg(x):
    return x+1

map函数的原型是map(function,iterable,...),它的返回结果是一个列表

参数function传的是一个函数名,可以是python内置的,也可以是自定义的

参数iterable传的是一个可迭代的对象,例如列表,元组,字符串这样的

map函数通常和lambda函数一起使用

这个函数的意思就是将function应用于iterable的每一个元素,结果以列表的形式返回,iterable后面还有省略号,意思就是可以传很多个iterable,如果有额外的iterable参数,并行的从这些参数中取元素,并调用function,如果一个iterable参数比另外的iterable参数要短,将以None扩展该参数元素

a=(1,2,3,4,5)
b=[1,2,3,4,5]
c="zhangkang"

la=map(str,a)
lb=map(str,b)
lc=map(str,c)

print(la)
print(lb)
print(lc)

输出:
['1', '2', '3', '4', '5']
['1', '2', '3', '4', '5']
['z', 'h', 'a', 'n', 'g', 'k', 'a', 'n', 'g']
print(map(lambda x: x * 2 + 10, foo))
#用for循环代替map
print([x * 2 + 10 for x in foo])

参考

https://blog.csdn.net/csdn15698845876/article/details/73321593

https://www.jianshu.com/p/9f306285a3ca

猜你喜欢

转载自www.cnblogs.com/z-x-y/p/10571009.html