gpt4 book ai didi

python - 将多个元素插入列表中的位置

转载 作者:行者123 更新时间:2023-12-01 04:50:19 24 4
gpt4 key购买 nike

有没有办法在 python 的列表理解过程中向列表中插入多个元素?

例如:

def a():
return [6,7,8]
[a() if i==2 else i for i in range(4)]
[0, 1, [6, 7, 8], 3]

是否可以一次性获得一个平面列表(函数 a 可以返回任何格式的数据)。

谢谢

最佳答案

这看起来有点令人讨厌,但适用于各种数据类型:

import itertools
def a():
return [6,7,8]
l = list(itertools.chain.from_iterable([a() if i==2 else [i] for i in range(4)]))
print(l)

>>>[0, 1, 6, 7, 8, 3]

我们可以看到这也适用于 a 中的其他返回类型:

def a():
return {6,7,8}

>>>[0, 1, 8, 6, 7, 3]

这已经足够复杂了,我会质疑是否采用单行方法。进一步分解可能会更具可读性。

关于python - 将多个元素插入列表中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28612274/

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