gpt4 book ai didi

python - 获取列表列表的第 i 个元素并创建这些第 i 个元素的列表的最编程优雅(pythonic)方式

转载 作者:行者123 更新时间:2023-12-03 20:01:01 28 4
gpt4 key购买 nike

假设您有一个列表列表,例如

lll = [(['a', 'b'], [1, 2], [True, False]),
(['c'], [3], [True]),
(['d', 'e', 'f', 'g'], [4, 5, 6, 7], [True, False, True, False])]
对于 lll 中的每个项目,我想要每个项目列表中第 i 个元素的列表,并且我希望所有这些列表都在一个列表中。
用你可以想象的语言来描述这是非常棘手的,但我希望最终的结果是这样的
result = [
['a', 1, True],
['b', 2, False].
['c', 3, True],
['d', 4, True],
['e', 5, False],
['f', 6, True],
['g', 7, False]
]
到目前为止我尝试过的是
newList = []
for item in lll:
num_things = len(item[0])
for ii in range(num_things):
newList.append([x[ii] for x in item])

newList
有没有更优雅的方式来获得这个结果?

最佳答案

没有进口的简单单线:

[[*ys] for xss in lll for ys in zip(*xss)]
zip-star 转置,第二个 for连接,内部方括号将元组从 zip 转换为列表。

关于python - 获取列表列表的第 i 个元素并创建这些第 i 个元素的列表的最编程优雅(pythonic)方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66112495/

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