python 匿名函数的使用(并没有那么简单)

以下为几种匿名函数的使用方式:
x=[(lambda x:x**2)(x) for x in range(10)]
print(x)
y=[x**2 for x in range(10)]
print(y)
init_data={'a':1,'c':2,'b':5,'d':3,'e':4}
print(sorted( init_data.items(), key= lambda x:x[1]))
print(sorted(init_data.items(), key=lambda x:x))
print((lambda x:x+323)(3))
#lambda 经常要和map, filter,reduce使用
map(lambda x:x*2, [1,2,3]) #map(func, iter1), func 是用lambda写的简单的函数,iter1 是可迭代的对象
#filter(function, iterable)

例如以下的操作:
for x in range(5):
li.append(lambda x: x**2)

以为li里面存储的是数据,其实存储的是lambda的位置,而不是具体的数据
li[0](2)
li[1}(2) 这两个函数的值是一样

python匿名函数并没有那么简单 https://blog.csdn.net/zwhut/article/details/78417546

猜你喜欢

转载自www.cnblogs.com/yingchen/p/10962453.html