一、Lambda表达式
Lambda表达式又被称之为匿名函数
格式
lambda 参数列表:函数体
二、map函数
函数就是有输入和输出,map的输入和输出对应关系如下图所示:
就是要把一个可迭代的对象按某个规则映射到新的对象上。
因此map函数要有两个参数,一个是映射规则,一个是可迭代对象。
结果:[2,4,6,8,10]
结果:[2,6,12,20,30]
三、filter函数
filter的输入和输出对应关系如下图所示:
结果:[‘hello',‘xxxx',‘ai']
四、reduce函数
结果:15=1+2+3+4+5
相当于每一次计算都是基于前一次计算的结果:
还可以为reduce计算添加初始值:
结果:25=10+1+2+3+4+5
五、三大推导式
5.1 列表推导式
5.2 集合推导式
直接把上面代码copy下来,然后把列表改成集合
5.3 字典推导式
六、闭包
闭包:一个返回值是函数的函数
再来看一个带参数的例子:
假设有一个csv文件,内容有三行,具体如下:
a,b,c,d,e
1,2,3,4,5
6,7,8,9,10
七、装饰器、语法糖、注解
由于有装饰器@runtime的存在,会把run这个函数作为参数丢到runtime(func)里面去,如果调整打印时间代码的位置会有不同结果:
这里还要注意,这里还用到了闭包的概念,在运行run函数的时候,调用的实际上是get_time函数。
对于多个参数的函数如何调用,看下面例子
可以发现,这样写对于函数的多态不是很好,因此可以写为:
再次进行扩展,更为普适的写法,可以解决传入类似i=4的关键字参数写法:
到此这篇关于Python进阶之高级用法详细总结的文章就介绍到这了,更多相关Python高级用法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!