匿名函数

Posted pythoncui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了匿名函数相关的知识,希望对你有一定的参考价值。

# 匿名函数引入

def func(n):

  return n*n

print(func(10)) 

# 将上述代码换成匿名函数

func = lambda n: n*n

print(func(10))

# 匿名函数

函数名 = lambda 参数1, 参数2... : 返回值

注:参数可以有多个,用逗号隔开

练习1: 编写x+y的匿名函数

add = lambda x, y : x+y

print(add(5, 6))

# map匿名

res  = map(lambda x: x**2, [1, 5, 7])

for i in res:

  print(i)   # 输出:1 25 49

# filter匿名

res = filter(lambda x: x>10, [5, 8, 9, 11, 12 ])

for i in res:

  print(i)   # 输出:11 12

练习题2:现有两元组 ( ( ‘a‘ ) ,( ‘b‘ ) ),  ( ( ‘c‘ ), ( ‘d‘ ) ), 请利用python中的匿名函数生成列表[ { ‘a‘ : ‘c‘}, { ‘b‘ : ‘d‘ } ]

技术图片
1 ret = zip ( ( a ) ,( b ) ),  ( ( c ), ( d ) )    # zip拉链法 将生成 ( ( ‘a‘ ) ,( ‘c‘ ) ),  ( ( ‘b‘ ), ( ‘d‘ ) ) 
2 
3 def func(tup):
4 
5   return { tup[0]: tup[1] } 
6 
7 res = map(func, ret)  
8 
9 print(list(res))
View Code
技术图片匿名实现 

以上是关于匿名函数的主要内容,如果未能解决你的问题,请参考以下文章

repost对JAVASCRIPT匿名函数的理解(透彻版)

如何启动匿名线程类

匿名函数

匿名函数的用法

使用匿名函数瓶颈提高 matlab 代码的性能

函数式编程——匿名函数