小编典典

重复列表元素n次

python

如何重复列表中的每个元素一次n并形成一个新列表?例如:

x = [1,2,3,4]
n = 3

x1 = [1,1,1,2,2,2,3,3,3,4,4,4]

x * n 不起作用

for i in x[i]:
    x1 = n * x[i]

必须有一个简单而明智的方法。


阅读 214

收藏
2021-01-16

共1个答案

小编典典

如果您确实希望将结果作为列表,并且生成器不足:

import itertools
lst = range(1,5)
list(itertools.chain.from_iterable(itertools.repeat(x, 3) for x in lst))

Out[8]: [1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4]
2021-01-16