栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python篇 匿名函数

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python篇 匿名函数

匿名函数概念:

匿名:没有名字的函数


匿名函数的定义

在讲匿名函数定义之前我们先来看一段js的匿名函数定义:

faction 函数名称 (参数) {
	//代码块
	return 返回值
}

#js匿名函数
faction (参数) {
	//代码块
	return 返回值
}

是不是很简单,如果把def换成faction就…当然不行,python并不支持这种用法

#python中
def 函数名(参数):
	#代码块
	return 返回值

#不支持,需要借用lambda表达式
def(参数):
	#代码块
	return 返回值
python匿名函数lambda表达式

lambda表达式也称箭头函数,最早出现在c++


lambda 语法格式
lambda :代码块 如果有返回值就写,没有就不写

如:

def sum(a,b,c):
	return a + b + c

sum_lambda=lambda a,b,c:a + b + c
print(sum_lambda(1,100,1000))
print(sum(1,100,1000))
结果
1101
1101

匿名函数参数个数
1.无参数情况
a_lambda=lambda:100
print(a_lambda())

2.1个参数情况
a_lambda=lambda a:a * 100
print(a_lambda(a))

3.有多个参数的情况
sum_lambda=lambda a,b,c:a + b + c
 print(sum_lambda(1,100,1000))
 print(sum(1,100,1000))

4.跟表达式的情况
c_lambda=lambda x:x if x % 2==0 else x+1
print(c_lambda(6))
print(c_lambda(7))

lambda作为参数传递
 def sub(a,b,func):
 	print("a=",a)
 	print("b=",b)
 	print("c=",func(a,b))
 sub(3,4,lambda a,b:a-b)

lambda作为返回值
def run(a,b):
	return lambda c:a + b + c

return_fun = run(1,1000)
print(return_fun)
print(run)
print(return_fun(100))

哈哈,本质上是生成了一个函数


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/488744.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号