Python代码阅读(第11篇)(展开嵌套列表)

Python代码阅读(第11篇)(展开嵌套列表)
文章图片

Python 代码阅读合集介绍: 为什么不推荐Python初学者直接看项目源码
本篇阅读的代码实现了展开嵌套列表的功能,将一个嵌套的list展开成一个一维list(不改变原有列表的顺序)。
本篇阅读的代码片段来自于30-seconds-of-python。
flatten
def flatten(lst): return [x for y in lst for x in y]# EXAMPLES flatten([[1,2,3,4],[5,6,7,8]]) # [1, 2, 3, 4, 5, 6, 7, 8]

flatten函数接收一个嵌套列表(以列表为元素的列表),返回一个按照原有顺序展开后的一维列表。
【Python代码阅读(第11篇)(展开嵌套列表)】该函数使用了列表推导式进行数据处理。该推导式使用了两层for循环,等价于
def flatten(lst): flatten_list = [] for y in lst: for x in y: flatten_list.append(x) return flatten_list

    推荐阅读