1. 程式人生 > >Python函數化編程整理

Python函數化編程整理

IT urn 生成式 函數 ffffff round fun import ret

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函數化編程整理