>我有这个列表
list = [ [(6, 8, 9), 111], [(15,), 22], [(11, 20), 80] ]
我想提取元组并用 0、1、2 覆盖它们......这样我就可以得到:
new_list = [[0, 1, 2], [3], [4, 5]]
# 6,8,9 was overwritten with 0, 1, 2
# 15 was overwritten with 3
# 11,20 was overwritten with 4, 5
# ...
我不需要像 111、22 和 80 这样的列表[1] 元素。
有没有一种简单的方法可以做到这一点,我试图遍历它,但在正确的迭代中遇到了问题。
>>> from itertools import count
>>> lis = [ [(6, 8, 9), 111], [(15, ), 22], [(11, 20), 80] ]
>>> c = count(0)
#If you want a list of list then use: [[next(c) for _ in x[0]] for x in lis]
>>> [tuple(next(c) for _ in x[0]) for x in lis]
[(0, 1, 2), (3,), (4, 5)]