我知道如何在Python范围内生成随机数。random.randint(numLow, numHigh)我知道我可以将其循环生成n个数量的这些数字for x in range (0, n): listOfNumbers.append(random.randint(numLow, numHigh))但是,我需要确保该列表中的每个数字都是唯一的。除了条件语句之外,还有一种直接的方法可以生成n个唯一的随机数吗?编辑:重要的是列表中的每个数字都与其他数字不同。所以[12,5,6,1] =好但[12,5,5,1] =不好,因为数字5出现两次。
4 回答
尚方宝剑之说
TA贡献1788条经验 获得超4个赞
首先生成数据范围,然后像这样随机播放
import random
data = range(numLow, numHigh)
random.shuffle(data)
print data
通过这种方式,您将获得特定范围内的所有数字,但顺序是随机的。
但是您可以使用random.sample从这样的一系列数字中获取所需元素的数量
print random.sample(range(numLow, numHigh), 3)
添加回答
举报
0/150
提交
取消