Python的lambda&map

Python 使用 lambda 来创建匿名函数,那么什么是匿名函数呢?“匿名信” 小伙伴们都知道吧,就是不写落款名字的信。那么顾名思义匿名函数是指一类无需定义函数名的函数。lambda 函数可以接收任意多个参数,并返回单个表达式的值。lambda 匿名函数的格式:用冒号分隔参数和表达式,冒号前面是参数,可以有多个,但是每个参数需要用逗号隔开。

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


def main():
    print(fun1(5, 6))
    # 我们可以用lambda实现同样的功能:
    fun2 = lambda x, y: x + y
    print(fun2(2, 3))


if __name__ == '__main__':
    main()

lambda 用于简化函数,在实际的开发中我们用 lambda 定义一个十分简单的函数。
Python 的 map 函数会根据提供的函数对指定的序列做映射,map 的语法格式为:map(function, iterable, ……),其中 map函数的第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。

def square(x):
    return x ** 2


def main():
    # print(fun1(5, 6))
    # # 我们可以用lambda实现同样的功能:
    # fun2 = lambda x, y: x + y
    # print(fun2(2, 3))
    map(square, [1, 2, 3, 4])
    # [1, 4, 9, 16, 25]
    map(lambda x: x ** 2, [1, 2, 3, 4])
    # [1, 4, 9, 16, 25]
    

if __name__ == '__main__':
    main()

map 与上一篇提到的打包器 zip 有类似之处,都有类似 “打包” 的功能,希望小伙伴们能够灵活运用。

你可能感兴趣的:(Python的lambda&map)