gpt4 book ai didi

python - 三重嵌套列表 Python

转载 作者:太空狗 更新时间:2023-10-29 17:51:44 25 4
gpt4 key购买 nike

我有一段代码给我一个列表,其中有一些三重嵌套列表:

my_list = [[['item1','item2']], [['item3', 'item4']]]

我想做到:

my_list = [['item1','item2'], ['item3', 'item4']]

有什么建议吗?

最佳答案

使用列表理解从每个子列表中选择单个子子列表:

>>> my_list = [item[0] for item in my_list]
[['item1', 'item2'], ['item3', 'item4']]

也可以使用 sum 来展平嵌套级别,但这是一场等待发生的性能灾难,因为它具有二次运行时间:

In [5]: my_list = [[[i, i+1]] for i in range(0, 10000, 2)]

In [6]: %timeit sum(my_list, [])
78.6 ms ± 2.15 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)

In [7]: %timeit [x[0] for x in my_list]
187 µs ± 3.05 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)

In [8]: 78600/187
Out[8]: 420.32085561497325

对于长度为 5000 的 my_list,速度降低了 420 倍,这根本不是一个很长的列表。对于更长的列表,情况更糟。

关于python - 三重嵌套列表 Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47786568/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com