为了账号安全,请及时绑定邮箱和手机立即绑定

生成范围内的'n'个唯一随机数

生成范围内的'n'个唯一随机数

莫回无 2019-10-08 10:18:01
我知道如何在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)


查看完整回答
反对 回复 2019-10-08
  • 4 回答
  • 0 关注
  • 506 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信