python的函数式编程
Posted jia03
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python的函数式编程相关的知识,希望对你有一定的参考价值。
一 高阶函数(即函数的参数能接收别的函数)
def add(x,y,f)
return (f(x)+f(y))
print(add(-5,6,abs))
11
内置函数:filter()函数 用于过滤序列
接受一个函数与一个序列
filter()
的作用是从一个序列中筛出符合条件的元素。由于filter()
使用了惰性计算,所以只有在取filter()
结果的时候,才会真正筛选并每次返回下一个筛出的元素。
内置函数:sorted()函数 用于排序.
对list进行排序:
>>> sorted([36, 5, -12, 9, -21])
[-21, -12, 5, 9, 36]
此外,sorted()
函数也是一个高阶函数,它还可以接收一个key
函数来实现自定义的排序,例如按绝对值大小排序:
>>> sorted([36, 5, -12, 9, -21], key=abs)
[5, 9, -12, -21, 36]
字符串排序的例子:
>>> sorted([‘bob‘, ‘about‘, ‘Zoo‘, ‘Credit‘]) [‘Credit‘, ‘Zoo‘, ‘about‘, ‘bob‘]
这里使用比较ASCIC值的大小。
给sorted
传入key函数,即可实现忽略大小写的排序:
>>> sorted([‘bob‘, ‘about‘, ‘Zoo‘, ‘Credit‘], key=str.lower)
[‘about‘, ‘bob‘, ‘Credit‘, ‘Zoo‘]
要进行反向排序的话,只需加入第三个参数,re
以上是关于python的函数式编程的主要内容,如果未能解决你的问题,请参考以下文章