python在指定范围内产生n个不重复的随机数的两种办法

一、常规的方法自己定义

 

#用于在一个整数范围内产生n个随机数,注意范围内的整数个数要小于所需的随机数的个数
#第一个参数表示开始的范围,第二个参数表示结束的范围,第三个表示产生随机数的个数
#最后返回的是一个列表
import random
class CreateRandomPage:
    def __init__(self, begin, end, needcount):
        self.begin = begin
        self.end = end
        self.needcount = needcount
        self.resultlist = []
        self.count = 0
    def createrandompage(self):
        tempInt = random.randint(self.begin, self.end)
        if(self.count < self.needcount):
            if(tempInt not in self.resultlist):
                self.resultlist.append(tempInt)    #将长生的随机数追加到列表中
                self.count += 1
            return self.createrandompage()      #在此用递归的思想
        return self.resultlist

 

亲测可行:


二、利用现成模块

 

 resultlist=random.sample(range(begin, end),needcount)

print(resultlist)

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页