首页 > 解决方案 > 有没有办法在 Python 中将列表列表转换为没有其他列表的列表?

问题描述

假设我有一个列表列表。

>>> my_list = [[1, 2, 3], [4, 5, 6], [7, 8, [9, 0]]]

有没有办法从该列表中取出所有项目并使其成为一个单一的非嵌套列表?像这样的东西:

>>> break_up(my_list)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0]

标签: pythonlist

解决方案


这使用递归

def appnd(new_list = [], list_to_append=[]):
    for i in list_to_append:
        if type(i) == list:
            appnd(new_list=new_list, list_to_append=i)
        else:
            new_list.append(i)

def main():
    my_list = [[1, 2, 3], [4, 5, 6], [7, 8, [9, 0]]]
    new_list = []
    appnd(new_list=new_list, list_to_append=my_list)
    print(new_list)


if __name__ == '__main__':
    main()

推荐阅读