我有一个元组列表,其中包含分配了一定概率的数字:
import random
my_randoms = [random.randrange(1, 51, 1) for _ in range(10)]
weights = [0.1, 0.2, 0.05, 0.03, 0.15, 0.05, 0.2, 0.02, 0.09, 0.11]
aa = list(zip(my_randoms, weights))
aa
Out[40]:
[(7, 0.1),
(5, 0.2),
(47, 0.05),
(21, 0.03),
(13, 0.15),
(32, 0.05),
(41, 0.2),
(1, 0.02),
(47, 0.09),
(19, 0.11)]
鉴于我分配的概率分布,我想从列表中随机生成100个数字。我该怎么办?谢谢!
答案 0 :(得分:0)
如果我对您的理解正确,那么您可以使用random
模块(https://docs.python.org/3/library/random.html#functions-for-sequences):
random.choices(my_randoms, weights=weights, k=100)