博客
关于我
Python(十)lambada表达式
阅读量:381 次
发布时间:2019-03-05

本文共 930 字,大约阅读时间需要 3 分钟。

一、Lambda 表达式

        概念:是一个,Lambda表达式基于数学中的得名,直接对应于其中的lambda抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数。Lambda表达式可以表示。

        原因:函数名并没有实际的意义,为了简便,所以推出了lambada表达式的语法糖!

        注意:与其它语言不同,Python的Lambda表达式的函数体只能有单独的一条语句,也就是返回值表达式语句

        理解:匿名函数的等价形式来理解lambada表达式!

        :虽然看着很先进,其实Lambda表达式的本质只是一个"",由编译器帮你转换包装为常规的代码,因此你可以使用更少的代码来实现同样的功能。建议不要乱用,因为这就和某些很高级的黑客写的代码一样,简洁、难懂,、难以调试!

二、语法

<函数对象名>
= lambda
<形式参数列表>
<表达式>

匿名函数的作用

1.不用命名,直接实现简单功能;但是如果只是"单个调用"的话,还是要命名变量2.让代码更加简洁

三、练习

"""语法说明:匿名函数的关键字为 lambda冒号前面是 形参;冒号后面是返回值"""from functools import reduce#(1)累加# def add(x,y):#     return  x+y# print(reduce(add,range(10)))print(reduce(lambda x,y:x+y,range(10)))#(2)阶乘# def mypow(x):#     return x**2print(list(map(lambda x:x**2,range(5))))#(3)偶数# def isood(num):#     return num%2 ==0print(list(filter(lambda x:x%2==0,range(100))))

练习2:高级

# 需求:求阶乘f = lambda func, n: 1 if n == 0 else n * func( func, n - 1 )print(f(f,4)) #24

练习3:无参

t = lambda: Trueprint(t()) #True

 

转载地址:http://bizwz.baihongyu.com/

你可能感兴趣的文章
Mysql学习总结(56)——MySQL用户管理和权限设置
查看>>
Mysql学习总结(57)——MySQL查询当天、本周、本月、上周、本周、上月、距离当前现在6个月数据
查看>>
Mysql学习总结(58)——深入理解Mysql的四种隔离级别
查看>>
Mysql学习总结(59)——数据库分库分表策略总结
查看>>
Mysql学习总结(5)——MySql常用函数大全讲解
查看>>
Mysql学习总结(60)——并发量大、数据量大的互联网业务数据库设计规范总结
查看>>
Mysql学习总结(61)——MySQL优化之DBA级优化整理汇总
查看>>
Mysql学习总结(62)——MySQL连接com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link问题
查看>>
Mysql学习总结(63)——Mysql数据库架构方案选择与分析
查看>>
Mysql学习总结(64)——Mysql配置文件my.cnf各项参数解读
查看>>
Mysql学习总结(65)——项目实战中常用SQL实践总结
查看>>
Mysql学习总结(66)——设置MYSQL数据库编码为UTF-8
查看>>
Mysql学习总结(67)——MYSQL慢查询日志
查看>>
Mysql学习总结(68)——MYSQL统计每天、每周、每月、每年数据 SQL 总结
查看>>
Mysql学习总结(69)——Mysql EXPLAIN 命令使用总结
查看>>
Mysql学习总结(6)——MySql之ALTER命令用法详细解读
查看>>
Mysql学习总结(70)——MySQL 优化实施方案
查看>>
Mysql学习总结(71)——MySQL 重复记录查询与删除总结
查看>>
Mysql学习总结(71)——数据库介绍(MySQL安装 体系结构、基本管理)再回顾
查看>>
Mysql学习总结(72)——MySQL 开发者开发,设计规范再总结
查看>>