重复列表元素多次
在 Python 中,您可能会遇到需要多次复制列表中每个元素的任务。例如,给定列表 x = [1, 2, 3, 4] 和乘法因子 n = 3,您的目标是生成一个新列表 x1,其中每个元素重复 n 次:
x1 = [1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4]
无效的方法
尝试使用 x * n 将不会提供所需的结果。同样,使用 x1 = n * x[i] 迭代 x 并将每个元素乘以 n 效率低下,并且容易出现逻辑错误。
优雅的解决方案
对于干净高效的解决方案,请考虑使用 numpy.repeat 函数。此函数旨在重复数组(或列表)的元素指定次数:
import numpy as np x1 = np.repeat(x, n)
将上面的代码与示例列表 x 和乘法因子 n 一起使用,x1 将填充为所需的重复元素:
array([1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4])
以上是如何在Python中多次重复列表元素?的详细内容。更多信息请关注PHP中文网其他相关文章!