首页 > 编程语言 >27python的匿名函数与map函数

27python的匿名函数与map函数

时间:2022-12-17 15:11:05浏览次数:73  
标签:map 函数 list 列表 匿名 27python lambda

在 Python 中,可以使用 lambda 关键字来创建匿名函数。这些函数不需要名字,因为它们通常只使用一次。

下面是一个例子:

lambda x: x**2

这是一个计算平方的匿名函数。它接受一个参数 x,并返回 x 的平方。

你可以将这个函数赋值给一个变量,然后像调用普通函数一样调用它:

codesquare = lambda x: x**2
print(square(5))  # prints 25

匿名函数的一个常见用途是作为另一个函数的参数。例如,你可以使用 sorted 函数来按照某个特定的标准对列表进行排序,而不是按照默认的字典序。你可以使用匿名函数作为 key 参数来指定排序标准:

odeitems = [("product1", 10), ("product2", 9), ("product3", 11)]
items.sort(key=lambda x: x[1])  # sort by price
print(items)  # prints [('product2', 9), ('product1', 10), ('product3', 11)]

匿名函数也可以和其他函数一起使用,例如 map 函数。下面是一个例子,使用 map 和匿名函数来对一个数字列表进行平方:

codenumbers = [1, 2, 3, 4]
squared = list(map(lambda x: x**2, numbers))
print(squared)  # prints [1, 4, 9, 16]

总之,匿名函数是一种简单的方法来定义一个函数,通常只在当前上下文中使用一次。



map函数也是Python中常用的内置函数之一,下面我们从三个方面介绍:什么是map函数,什么时候用map函数,以及怎么用map函数。此处参考

  1. 什么是map函数?

map是python内置函数,会根据提供的函数对指定的序列做映射。map()函数的格式是:

 map(function,iterable,...) 

(1)参数

  • function是一个函数名称,通过该函数对后续参数iterable进行处理
  • iterable是一个可迭代对象,比如:字符串、列表、字典、元组、集合等

(2)返回值

map函数通过将指定的function函数依次作用在给定序列iterable中的每一个元素上,得到一个新的list并返回。注意,map不改变原list,而是返回一个新list。

  • Python2.x 返回列表
  • Python3.x 返回生成器
  1. 什么时候用map函数?

当需要对序列进行某些操作或者处理,将其转换为新的列表时,用map函数是最合适不过了。当然,除了最基本的用法,map函数还有一些特殊的使用技巧,比如:可以进行类型转换(将元组或字符串转换为列表,因为map的返回值是列表),可以提取字典中的key等。

  1. 如何使用map函数?

(1)基本用法:

>>> def interest(x):

(2)可以在function处使用匿名函数lambda:

>>> list(map(lambda x, y: (x ** y, x+y), [2, 4, 6], [3, 2,1]))
返回值:[(8, 5), (16, 6), (6, 7)]

(3)map函数还可以用来进行类型转换

  • 将元组转换为列表
>>> list(map(int, (1, 2, 3)))
返回值:[1, 2, 3]
  • 将字符串转换为列表
>>> list(map(int,'1234'))
返回值:[1, 2, 3, 4]

(4)可以提取字典中的key

>>> list(map(int,{'1':2,'2':3,'3':4}))
返回值:[1, 2, 3]

标签:map,函数,list,列表,匿名,27python,lambda
From: https://www.cnblogs.com/socoo-/p/16989017.html

相关文章