在Python中将嵌套列表转换为平面列表
嵌套列表是一个列表,其元素是列表本身。如果我们有一个python数据容器,它是一个嵌套列表,则有时可能需要将其转换为扁平列表,以便可以进一步处理每个元素。
甚至内部元素也可以自己嵌套。并且可以有很多嵌套层。因此,我们将通过递归来解决这个问题。我们将继续检查元素是否嵌套,然后继续反复应用该函数,直到该元素不再是列表为止。一旦发现元素不是列表,我们会将其附加到新列表中,该列表将包含列表中所有非嵌套元素。
示例
listA = [[43, [0]],12, 19, [13,[8, 8]], 21 ] print('Given nested list: \n', listA) # Flat List res = [] # function def flatlist(l): for x in l: if type(x) == list: flatlist(x) else: res.append(x) flatlist(listA) print('Flattened List created: \n', res)
输出结果
运行上面的代码给我们以下结果-
Given nested list: [[43, [0]], 12, 19, [13, [8, 8]], 21] Flattened List created: [43, 0, 12, 19, 13, 8, 8, 21]