项目场景:
需求:是想要获取多个列表里面的元素,组合成新的列表
问题描述
在工作的过程中,碰到需要对应多个列表里面的数据元素,进行一个合并,生成一个新的列表,起初的想法是多个for 的嵌套,但是很明显这样的操作效率很低,代码也不简洁。强大而有用的工具内置迭代工具 itertools - chain,可以一行代码解决这样的问题
# coding=utf-8
# 作者:Administrator
# 创建时间:2022 2022/5/9 9:32
# IDE:PyCharm
# 描述:多个可迭代对象构建成一个新的可迭代对象
from itertools import chain
# exp1 :
list1=[1,2,3,4,3]
list2 = ['a','b','b','d']
list3 = ['abvddddd']
re_list = chain(list1,list2,list3)
print(list(re_list)) #[1, 2, 3, 4, 3, 'a', 'b', 'b', 'd', 'abvddddd']
print(list(chain.from_iterable(list3))) # ['a', 'b', 'v', 'd', 'd', 'd', 'd', 'd'] 是将一个迭代的对象中的所有元素构成新的迭代对象返回
解决方案:
python 本身内置了很多的工具库,在编写的过程中,如果发现没有快捷的方法,可以查询相关的库,一般python 都有,或者可以使用第三方的库来处理解决也是可以的