场景1: 不调用只定义,返回函数本身以及内存地址
a = lambda: 100
print(a) # <function <lambda> at 0x10881ad30>
场景2: 赋值给变量,使用变量调用
a = lambda x: x**2
print(a(2)) # 4
实现两数相加
a = lambda x, y: x+y
print(a(2,3)) # 5
场景3: 作为函数的参数使用
def apply(func, n):
return func(n)
print(apply(lambda x: x*2, 5)) # 10
场景4: 无参数传递
a = lambda: 100
print(a()) # 100
(目前有疑惑)场景5:
result = []
for i in range(3):
result.append(lambda: i)
for y in result:
print(y()) # 4
break
场景6: 函数嵌套
a = lambda x: (lambda y: (lambda z: z))
print(a(10)(20)(30)) # 30
原文地址:https://blog.csdn.net/weixin_46697247/article/details/134813710
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_45992.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!