是否有 Python 内置函数根据另一个列表中的相应值重复列表中的每个元素?例如 A
in list x
position 0 is repeated 2 times because of the value 2
at position 0 in the list y
.
>>> x = ['A', 'B', 'C']
>>> y = [2, 1, 3]
>>> f(x, y)
['A', 'A', 'B', 'C', 'C', 'C']
或者换句话说,实现这个操作最快的方法是什么?
最佳答案
只需使用一个简单的列表理解:
>>> x = ['A', 'B', 'C']
>>> y = [2, 1, 3]
>>> [x[i] for i in range(len(x)) for j in range(y[i])]
['A', 'A', 'B', 'C', 'C', 'C']
>>>
关于python - 根据值列表重复每个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38758708/