当前位置: 代码迷 >> python >> 从列表中随机选择N个项目,可能重复
  详细解决方案

从列表中随机选择N个项目,可能重复

热度:110   发布时间:2023-07-16 10:38:05.0

我正在尝试从另一个列表b生成一个随机项目的列表。 允许重复。 我不能使用random.sample,因为N可以超过列表b中的项目数。
我在下面写了一些代码:

def generate_random_sequence(n):
   population = []
   for i in xrange(n):
       b = random.choice(stuff)
       population.append(b) 

但是我真的很担心它的性能,因为它会执行很多次。 随机库中是否有一种方法可以执行此任务? 还是有一种更优化的方式来执行此任务?

您可以在numpy库中使用random.choice

In [3]: np.random.choice([1,5,6],10)
Out[3]: array([6, 5, 6, 6, 6, 6, 1, 6, 1, 6])
  相关解决方案