【python 內建函式】python中函式相關的內建函式
1、filter()
函數語言程式設計的意思就是對序列應用一些函式的工具。例如,基於某一測試函式過濾出一些元素(filter),以及對每隊元素都應用函式並執行到最後結果(reduce)。
[root@izbp1f0leha0lvmqfhigzpz code]# python
Python 2.7.5 (default, Aug 4 2017, 00:39:18)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> list(range(-5,5))
[-5, -4, -3, -2, -1, 0, 1, 2, 3, 4]
>>> list(filter(lambda x:x>0,range(-5,5)))
[1, 2, 3, 4]
>>>
2、map()
程式對列表和其他序列常常要做的一件事情就是對每一個元素進行一個操作並把其結果集合起來。因為 map() 是內建函式,它總是可用的,並總是以同樣的方式工作,還有一些效能方面的優勢(它要比自己編寫的 for 迴圈更快)。
>>> m1=[1,2,3,4,5]
>>> m2=map(lambda x:x+10,m1)
>>> list(m2)
[11, 12, 13, 14, 15]
>>>
3、reduce()
reduce() 位於 functools 模組中,要更復雜一些。它接收一個迭代器來處理,但是,它自身不是一個迭代器,它返回一個單個的結果。
>>> from functools import reduce
>>> m3=reduce(lambda x,y:x+y,[1,2,3,4])
>>> print(m3)
10
>>>