如何拆分Python列表中的配对元素为独立元素
嵌套二元组列表的拆分实现
针对给定的嵌套元组列表original_list = [(1,10),(4,5),(2,7)],要拆分得到包含全部6个独立元素的扁平列表,可通过以下几种常用方案实现:
- 列表推导式实现(无依赖、性能最优)
双层遍历分别获取外层列表的每个元组、内层元组的每个独立元素,直接收集为新列表:original_list = [(1,10),(4,5),(2,7)] flattened = [element for group in original_list for element in group] # 最终输出:[1, 10, 4, 5, 2, 7] - itertools标准库chain实现
调用标准库提供的链式迭代方法,直接将多个嵌套的可迭代对象拼接为单一迭代流,再转换为列表:from itertools import chain original_list = [(1,10),(4,5),(2,7)] flattened = list(chain(*original_list)) # 最终输出:[1, 10, 4, 5, 2, 7] - 短写法sum实现
利用列表可拼接的特性,将原列表的所有元组作为累加项依次拼接到空列表上:
注意:这个写法必须手动传入空列表作为初始累加值,如果省略该参数,sum默认从整数0开始累加,会触发类型错误;且该方法在列表元素规模较大时性能较差,不适合处理大量数据的场景。original_list = [(1,10),(4,5),(2,7)] flattened = sum(original_list, []) # 最终输出:[1, 10, 4, 5, 2, 7]
内容的提问来源于stack exchange,提问作者codecruncher699
相关产品推荐
相关产品推荐

