一日一技举例说明python中的map

中科白癜风医院善行天下 http://nb.ifeng.com/a/20180423/6523823_0.shtml

map()函数

Python的map()方法,作为输入提供的迭代器的所有元素应用函数。例如,迭代器可以是列表,元组,集合,字典,字符串,并且它返回可迭代的映射对象。另外,map()是python的内置函数。

在本教程中,我们将学习:

map()的语法map()函数如何实现?将map()与Python内置函数一起使用使用map()和字符串作为迭代器将map()与数字列表一起使用在元组中使用map()在字典中使用map()与集合一起使用map()将map()与Lambda函数一起使用在map()函数内部使用多个迭代器语法如下:

map(function,iterator1,iterator2...iteratorN)

两个重要的参数:

function:要提供给map()的必须参数,它将应用于迭代器中所有可用的项目。iterator:一个可迭代的必须对象。它可以是列表,元组等。我们还可以将多个迭代器对象传递给map()函数。返回值

map()函数将给定函数应用于迭代器内的所有项目,并返回可迭代的映射对象,比如元组,列表等。

map()函数如何实现?

map()函数将两个输入作为函数和一个可迭代对象。给map()的函数是普通函数,它将对给定可迭代对象中存在的所有值进行迭代。

假设有一个数字列表,并且想要得到每个数字的平方。

获取输出后,我们需要返回给定数字平方的函数。函数实现如下:

defsquare(n):

returnn*n

我们想得到以下数字的平方;

my_list=[2,3,4,5,6,7,8,9]

现在,让我们使用map()函数来获取my_list中每个元素的平方。

实现代码如下:

defsquare(n):

returnn*n

my_list=[2,3,4,5,6,7,8,9]

updated_list=map(square,my_list)

print(updated_list)

print(list(updated_list))

输出:

mapobjectat0xC

[4,9,16,25,36,49,64,81]

输出结果我们可以看到,map()函数的输出为mapobjectat0xC的map()对象。

然后我们使用for循环或使用list()方法对输出进行迭代,以获取最终结果。

因此,使用map()函数,我们可以获得每个数字的平方。给map的列表是[2,3,4,5,6,7,8,9],然后使用square()函数输出从map()得到的是[4,9,16,25,36,49,64,81]。

map()将函数square()应用于列表中的所有元素。例如,my_list变量并使用每个数字的平方更新列表。输出存储在updated_list变量中。

将map()与Python内置函数一起使用

map()函数是一个内置函数,可以与Python中其他内置函数一起使用。在以下示例中,我们使用round()内置函数给值进行四舍五入.

示例如下:

创建的列表是my_list=[2.,3.,4.,5.,6.,7.,8.,9.]。

我们需要得到列表中每个元素四舍五入的值。我们使用round()函数。

my_list=[2.,3.,4.,5.,6.,7.,8.,9.]

updated_list=map(round,my_list)

print(updated_list)

print(list(updated_list))

输出:

mapobjectat0xE65F

[3,4,4,6,6,8,8,10]

round()函数应用于列表中的所有元素,它返回一个列表,其中所有值按照四舍五入的值输出。

使用map()和字符串作为迭代器

我们还可以在map()中传入字符串参数。在Python中,字符串的作用类似于数组,因此我们可以在map()中使用它。

在示例中,我们有一个函数myMapFunc(),负责将给定的字符串转换为大写。将函数myMapFunc()提供给map()函数。map函数将通过将字符串传递给myMapFunc()来转换给定的大写字符串。

defmyMapFunc(s):

returns.upper()

my_str=wel


转载请注明:http://www.aierlanlan.com/tzrz/5349.html