isk*_*lue 2 python random integer
我可以使用 for 循环生成带有替换的随机整数列表,但它看起来很冗长,并且必须有一种更优雅的方法来使用纯 python 或不使用random循环来执行此操作。是否有更优化的解决方案可以产生rand_list以下结果,而无需在每个循环上附加?
import random
rand_list = []
for x in range(100):
r = random.choice([1,2,3,4,5])
rand_list.append(r)
Run Code Online (Sandbox Code Playgroud)
我相信您需要使用随机包中的函数choices,您只是缺少“s”!此外,您还需要添加k参数来说明您想要采样多少个值:
values = [1,2,3,4,5]
print(random.choices(values,k=10))
Run Code Online (Sandbox Code Playgroud)
输出:
[2, 1, 4, 2, 2, 4, 1, 2, 1, 4]
Run Code Online (Sandbox Code Playgroud)
在您的示例中,您需要将 k 固定为 100。