Python函数化编程整理
Posted 灰了个灰
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python函数化编程整理相关的知识,希望对你有一定的参考价值。
1.映射函数
items=[1,2,3,4,5] def inc(x): return x+1 list(map(inc,items))
[2, 3, 4, 5, 6]
>>> a = [i+1 for i in range(3)] >>> list(map((lambda x:x+5),a))
[5, 6, 7]
2.过滤函数
>>> list(filter((lambda x:x>1),a))
[2]
3.规约函数:将列表所有元素依次计算后返回唯一结果
累加:
>>> from functools import reduce
>>> reduce((lambda x,y:x+y),a)
45
累乘
>>> arr = [i+1 for i in range(4)] >>> reduce((lambda x,y:x*y),arr)
24
4.lamdba函数:匿名函数,其他列子里有不列举
5.列表生成式
>>> a = [i+1 for i in range(3)] >>> a
[1, 2, 3]
练习:列表[1,2,3,4,5]中过滤奇数。
>>> arr = list(filter((lambda x:x%2==0),[i+1 for i in range(5)])) >>> arr
[2, 4]
练习:通过两个列表构建字典。
>>> a = [i+1 for i in range(3)]
>>> b = [‘a‘,‘b‘,‘c‘]
>>> c = {i:j for i in a for j in b}
>>> c
{0: ‘c‘, 1: ‘c‘, 2: ‘c‘}
以上是关于Python函数化编程整理的主要内容,如果未能解决你的问题,请参考以下文章
JS复习—函数(函数的形参和实参没整理,函数的方法待补充,函数化编程待扩展)