2025/12/25 13:29:46
网站建设
项目流程
东莞哪里有网站建设厂家,外贸网站优化怎么做,网站策划与网上营销,网络传媒网站Python中的“高级工具”
lambda函数
python除了使用def创建函数#xff0c;还可以用lambda表达式。lambda表达式是一个用lambda关键字创建的功能简单的小型函数对象#xff0c;一般把函数结果赋值给一个变量#xff0c;通过这个变量来调用lambda#xff0c;而不是如def语句…Python中的“高级工具”lambda函数python除了使用def创建函数还可以用lambda表达式。lambda表达式是一个用lambda关键字创建的功能简单的小型函数对象一般把函数结果赋值给一个变量通过这个变量来调用lambda而不是如def语句将函数赋值给变量所以称lambda函数为匿名函数。匿名是说内存空间中不为该函数创建内存。lambda表达式的语法如下lambda arg1,arg2… argn : expressionllambdax:x**2#基本语法表达式print(l(3))print((lambdax:x**2)(3))#更高级的写法lambda表达式支持多个参数支持简单的if/else语句。llambdax,y,z:xifxyzelseerrorprint(l(2,3,4))print(l(3,2,5))print((lambdax,y:xifxyelsey)(8,2))之前的例子x1deffoo(x):defbar(y):returnxyreturnbar ffoo(10)print(f(5))print(f(15))用lambda表达式改写deffoo(x):return(lambday:xy)ffoo(10)print(f(5))print(f(15))更高级的改写方法foo(lambdax:(lambday:xy))ffoo(10)print(f(5))print(f(15))映射函数mapmap函数的表达式map(func,*iterables)func : 可执行函数iterables : 迭代器可迭代的序列lmap(lambdax:x**2,[1,2,3,4])print(list(l))python3中map函数返回的是跌代器“所以用list(l)amap(lambdax,y:x**y,[1,2,3],[2,3,4])print(list(a))bmap(lambdax,y:x**y,[1,2,3],[3])#x和y,遵循key:value形式所以只显示一个值“1”print(list(b))map函数返回的是迭代器不是列表所以输出是得用另外的方法如list( )或者for i in things:print(i)拉链函数zip