Python批量处理list中的每个元素

1:直接for循环遍历处理

在写代码过程中我们常常可能会遇到这样一种情况,要对一个list中的每个元素做同样的操作时,比较简便的方法是,写个for循环,就可以了。

a = [1, 2, 3]
for i in range(len(a)):
a[i] += 1

2:for循环遍历的简介写法

这种写法不太简洁,实际上一行代码就可以完成了

a = [1, 2, 3]
a = [x+1 for x in a]

甚至可以在一行代码里添加条件判断

a = [1,2,3]
a = [x+1 for x in a if a > 1]

3:使用map方法

上述两种方法,都比较方便,但如果我们要对list做复杂处理,很多时候,需要手动写一个方法模块,再对list中的每个元素进行处理,这个时候,就可以使用map方法了

这里只是为了演示map方法,函数function_tmp写的很简单,你可以根据需要,添加自己的功能。

def function_tmp(x):
x+=1
return x
map(function_tmp, a)

但是map函数返回的是一个map类型,所以要想查看值需要把它再转换为list

list(map(function_tmp, [1,2,3]))

运行时间效率:方法3 > 方法2 > 方法1

The End


已发布

分类

标签:

评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注