用Python进行数据分析3.2 函数 0705

2021-07-05  本文已影响0人  Jason数据分析生信教室

Lambda函数

210705
Python支持所谓的匿名lambda函数。lambda函数是一种通过单个语句生成函数的方式,其结果是返回值。匿名函数使用lambda关键字定义,该关键字表达在此声明一个函数。

def short_function(x):
    return x*2
equiv_anon = lambda x: x*2

因为lambda函数简短易懂,所以会经常被使用。再举个例子,先定一个自定义函数,然后用lambda函数执行。

In [10]: def apply_to_list(some_list,f):
    ...:     return[f(x) for x in some_list]
    ...: ints=[4,0,1,5,6]
    ...: apply_to_list(ints,lambda x: x*2)
Out[10]: [8, 0, 2, 10, 12]

另外再举一个例子,将lambda函数出给列表中的sort的方法:

In [15]: strings=['foo','card','bar','aaaa','abab']
In [16]: strings.sort(key=lambda x: len(set(list(x))))
In [17]: strings
Out[17]: ['aaaa', 'foo', 'abab', 'bar', 'card']

3.2.5 柯里化: 部分参数应用

用已有的函数衍生出新的函数。

def add_mumbers(x,y):
    return x+y

使用这个函数,就衍生出了一个只有一个变量的新函数,add_five,可以给参数加上5

def add_mumbers(x,y):
    return x+y
add_five = lambda y: add_numbers(5,y)

怎么样,是不是都连起来了。虽然也没有什么神奇的地方。

上一篇下一篇

猜你喜欢

热点阅读