首页 > 解决方案 > 使用列表理解多次将项目添加到列表中

问题描述

我正在按以下方式列出清单:

lst = ['val1', 'val2', 'val3']

output = [item for it in lst]

...但是,我想将任意数量的每个项目添加到列表中,而不仅仅是一个。

像这样的东西(如果我想每次添加 3 个元素到列表中):

output = [item*3 for item in lst]

...所以如果lst看起来像这样:

['val1', 'val2', 'val3']

...output看起来像这样:

['val1', 'val1', 'val1', 'val2', 'val2', 'val2'...]

我怎样才能做到这一点?

标签: pythonpython-3.x

解决方案


像这样(显然,您必须更改代码以满足您的需要):

lst = ['val1', 'val2', 'val3']

output = [i for i in lst for x in range(3)]

print(output)

输出(格式化):

[
  'val1', 'val1', 'val1',
  'val2', 'val2', 'val2',
  'val3', 'val3', 'val3'
]

将 3 更改为您希望项目重复的次数。


推荐阅读