千锋教育-做有情怀、有良心、有品质的职业教育机构

Python中的random包

来源:千锋教育
发布时间:2023-11-07 00:05:39
分享

如果你已经了解伪随机数(psudo-randomnumber)的原理,那么你可以使用如下:

random.seed(x)

来改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。

1)随机挑选和排序

random.choice(seq)#从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。

random.sample(seq,k)#从序列中随机挑选k个元素

random.shuffle(seq)#将序列的所有元素随机排序

2)随机生成实数

下面生成的实数符合均匀分布(uniformdistribution),意味着某个范围内的每个数字出现的概率相等:

random.random()#随机生成下一个实数,它在[0,1)范围内。

random.uniform(a,b)#随机生成下一个实数,它在[a,b]范围内。

下面生成的实数符合其它的分布(你可以参考一些统计方面的书籍来了解这些分布):

random.gauss(mu,sigma)#随机生成符合高斯分布的随机数,mu,sigma为高斯分布的两个参数。

random.expovariate(lambd)#随机生成符合指数分布的随机数,lambd为指数分布的参数。

此外还有对数分布,正态分布,Pareto分布,Weibull分布,可参考下面链接:

http://docs.python.org/library/random.html

假设我们有一群人参加舞蹈比赛,为了公平起见,我们要随机排列他们的出场顺序。我们下面利用random包实现:

importrandom

all_people=['Tom','Vivian','Paul','Liya','Manu','Daniel','Shawn']

random.shuffle(all_people)

fori,nameinenumerate(all_people):

print(i,':'+name)

以上内容为大家介绍了Python中的random包,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

声明:本站部分稿件版权来源于网络,如有侵犯版权,请及时联系我们。

相关推荐

  • Python重定向方式 本节介绍常用的Python标准输出重定向方式。这些方法各有优劣之处,适用于不同的场景。控制台重定向最简单常用的输出重定向方式是利用控制台命令。这种重定向由控制台完成,而与Python本身无关。Wind
  • Python重定向之print >>和sys.stdout print>>重定向这种方式基于print语句的扩展形式,即"printobj>>expr"。其中,obj为一个file-like(尤其是提供write方法的)对象,为None时对应标准输出(sys.
  • Python上下文管理器 本节严格意义上并非新的重定向方式,而是利用Pyhton上下文管理器优化上节的代码实现。借助于上下文管理器语法,可不必向重定向使用者暴露sys.stdout。首先考虑输出抑制,基于上下文管理器语法实现如
  • Python之logging模块重定向 对于代码量较大的工程,建议使用logging模块进行输出。该模块是线程安全的,可将日志信息输出到控制台、写入文件、使用TCP/UDP协议发送到网络等等。默认情况下logging模块将日志输出到控制台(
  • python文件的三个名词之模块 提起python文件,经常会听到3个名词,python脚本,python模块,python包。脚本的概念是从python交互式命令行引用过来的,把在命令行内运行的代码段复制到一个文件里再运行,这个文件
  • python的错误和异常 python至少有2类不同的错误:语法错误(SyntaxErrors)和异常(Exceptions)。1语法错误这个单词应该还是很有必要认识的,呵呵,语法错误,也叫解析错误,是我们最不愿意发生的错误,