港服(Server.HK)Python教程:map如何对python3代码进行简洁化处理?

如果我们想减少大量代码的使用,避开频繁使用循环语句是一种方法,但也不是没有别的办法可以选择的。小编先给大家一点提示,往函…

如果我们想减少大量代码的使用,避开频繁使用循环语句是一种方法,但也不是没有别的办法可以选择的。小编先给大家一点提示,往函数方面考虑。没错,我们有专门的函数可以把列表中的数据进行细化,这里用到了映射的思想,所以最终map函数的代码都是很简短的。下面我们就map在列表中的使用给大家展开讲解。


map()方法会将一个函数映射到序列的每一个元素上,生成新序列,包含所有函数返回值。

也就是说序列里每一个元素都被当做x变量,放到一个函数f(x)里,其结果是f(x1)、f(x2)、f(x3)……组成的新序列。

 

通俗的讲就是:map()它接收一个函数 f 和一个 可迭代对象(这里理解成 list),并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。

map() 函数语法:

参数:function — 函数、iterable — 一个或多个序列

 

下面实例展示map( )用法:

def square(x) :            # 计算平方数
     return x ** 2
map(square, [1,2,3,4,5])   # 计算列表各个元素的平方

结果返回:[1, 4, 9, 16, 25]

map(lambda x: x ** 2, [1, 2, 3, 4, 5])  # 使用 lambda 匿名函数

结果:[1, 4, 9, 16, 25]

# 提供了两个列表,对相同位置的列表数据进行相加
map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10])

结果:[3, 7, 11, 15, 19]

在使用map函数前,最先需要理解的就是其中用到的映射过程,关于映射这点在数学中都有讲过,如果没学会的可以看看我们上面的映射分析图片,今天关于map对列表代码进行简化的方法到这里就结束啦。

为您推荐

港服(Server.HK)Python教程:如何实现对Python中列表的排序?

对List进行排序,Python提供了两个方法 方法1.用List的内建函数list.sort进行排序 list.sor...

港服(Server.HK)Python教程:python迭代器中的函数整理

1、可以连接迭代器的函数 chain:按顺序将多个迭代器连接成一个迭代器。 Cycle:重复迭代器的所有元素。 Tee:...

港服(Server.HK)Python教程:用Python举例实现逆波兰表达式

逆波兰表达式是编译原理中的一种基本表达式,利用Python语言也可以实现逆波兰表达式的输出,这里举例实践说明: 什么是逆...

Python 程序:检查给定字符串是否为回文

港服(Server.HK)Python教程: 用一个实例写一个 Python 程序来检查给定的字符串是不是回文。在 Py...

港服(Server.HK)Python教程:python3判断字典中key是否存在

今天来说一下如何判断字典中是否存在某个key,一般有两种通用做法,下面为大家来分别讲解一下: 第一种方法:使用自带函数实...
返回顶部