python list comprehension从列表中创建重复值

JPC*_*JPC 0 python list

我正在努力创造

[ x 
 for x in [1,2,3] 
     for y in [3,1,4] ]
Run Code Online (Sandbox Code Playgroud)

输出:

[1, 1, 1, 2, 2, 2, 3, 3, 3]
Run Code Online (Sandbox Code Playgroud)

但我想要的是创造

  • 1 3次
  • 2次1次
  • 3 4次

预期产出:

[1, 1, 1, 2, 3, 3, 3, 3]
Run Code Online (Sandbox Code Playgroud)

是否可以在列表理解中执行此操作?

Mar*_*ers 5

使用此zip()功能将您的号码与其计数配对:

numbers = [1, 2, 3]
counts = [3, 1, 4]
output = [n for n, c in zip(numbers, counts) for _ in range(c)]
Run Code Online (Sandbox Code Playgroud)