Python Random模块

random.seed(a=None, version=2)

初始化随机数发生器。
如果a被忽略或者为None,则使用系统当前时间。

产生整数的函数

random.randrange(stop)

random.randrange(start, stop, [, step])
返回一个随机元素的range(start, stop, step)
int(random()*n)

>>> random.randrange(10)                 # Integer from 0 to 9
7

>>> random.randrange(0, 101, 2)          # Even integer from 0 to 100
26

randint(a, b)

返回一个a<=N<=b的整数N,相当于randrange(a, b+1)

产生序列的函数

random.choice(seq)

从一个非空序列seq中随机返回一个元素,如果为空,raise 一个IndexError

random.shuffle(x,[, random])

重新排列序列x的位置(洗牌)。可选参数random默认为random(),返回一个0到1的浮点数

即使比较小的序列x,也比一般随机数产生器要长,意味着一个长序列的大部分不会被产生。(感觉表达的意思是x太常会产生没有重排的意思)

random.sample(population, k)

返回一个从population seq or set 选取的长度为k的唯一元素的列表,用于放回抽样。
population的成员不需要是可哈西或者唯一的,如果包含重复元素,那么每一次事件是在样品中的一个可能的选择。
该函数相比于range,为了时间和空间效率更高的从population抽样。

产生指定的实值分布,

random.random()

返回一个0到1之间的浮点数

random.uniform(a, b)

返回一个a,b之间的浮点数,b的值不确定是否被包含在内
类比于:a + (b-a) * random()

random.triangular(low, high, mode)

返回一个low和high之间的数并且指定了在这些界限之间的模式。low和high默认为0和1,mode参数默认为low和high之间的对称分布
random.triangular(-3, 8, 0)

random.betavariate(alpha, beta)

Beta分布,参数都大于0,返回介于0和1之间的数值

random.expovariate(lambd)

指数分布,参数不为0

random.gammavariate(alpha,beta)

Gamma分布,参数大于0

random.gauss(mu, sigma)

高斯分布,比 normalvariate()快很多

lognormvariate(mu, sigma)

对数分布。如果你以自然对数采取这种分布,你会得到一个平均数mu和标准差西格玛正态分布。mu可以有任何值,和西格玛必须大于零

random.normalvariate(mu, sigma)

正态分布。

除了random模块,numpy模块中也有random函数
numpy中的random

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值