Python高级特性与几种函数的讲解

切片

从list或tuple中取部分元素。

iterable、iterator

可迭代,迭代器,集合类型数据可迭代但不是迭代器,可通过iter()转变为迭代器。

可迭代对象可使用for-in语句遍历,判断x是否可迭代:isinstance(x, Iterable)。

列表生产式

高效创建列表,见代码示例:

generator

isinstance(generator, Iterable) = True,可使用for-in语句,或者使用next方法。

generator函数

generator函数本质是一个有状态的函数,遇到yield语句时会暂时返回。

高阶函数

参数是函数的函数即是高阶函数,可对比数学概念:g(x) = f(x) + 1,g(x)即高阶函数。

map

reduce

fromfunctools importreduce

reduce(lambdaprevious, x : previous +x, [1, 2, 3, 4]) # 10

filter

i =filter(lambdax : x %2==True, [1, 2, 3, 4])

list(i) # [1, 3]

sorted 默认升序,通过key参数决定排序规则。

sorted([1,3,2], key = lambda x : -x) # [3, 2, 1]

返回函数做回函数返回值

闭包概念:包含环境成分(自由变量)和控制成分的实体(lambda表达式,函数)。

匿名函数

即lambda表达式。

装饰器

函数包函数的语法糖?

偏函数

把一个函数的某些参数给固定住,返回一个新的函数。类似柯里化,但更强大?

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

猜你喜欢

转载自blog.csdn.net/qq_40925239/article/details/89553405