python-lambda表达式

lambda用来定义一个函数

普通函数:

def multiply(x, y):
    return x * y

使用lambda重写以上函数:

multiply = lambda x, y: x * y

lambda函数由三个部分组成:

1.  lambda 关键字

2. 用 , 分割的参数,就是普通函数里的参数,后面跟一个  

3. 函数体,就是普通函数里的函数体

一些栗子:

# 计算numbers列表里的各个列表的平均值,然后返回成一个列表
numbers = [
[34, 63, 88, 71, 29],
[90, 78, 51, 27, 45],
[63, 37, 85, 46, 22],
[51, 22, 34, 11, 18]
]

averages = list(map(lambda x: sum(x) / len(x), numbers))
结果: [57.0, 58.2, 50.6, 27.2]

 

# 过滤出城市名字长度小于10的城市
cities = ["New York City", "Los Angeles", "Chicago", "Mountain View", "Denver", "Boston"]

short_cities = list(filter(lambda x: len(x) < 10, cities))
结果: ['Chicago', 'Denver', 'Boston']

 

posted @ 2018-06-05 23:36  诗&远方  阅读(1523)  评论(0编辑  收藏  举报