本篇阅读的代码实现了展开嵌套列表的功能,将一个嵌套的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
函数接收一个嵌套列表(以列表为元素的列表),返回一个按照原有顺序展开后的一维列表。
该函数使用了列表推导式进行数据处理。该推导式使用了两层for
循环,等价于
def flatten(lst):
flatten_list = []
for y in lst:
for x in y:
flatten_list.append(x)
return flatten_list