我是靠谱客的博主 光亮饼干,最近开发中收集的这篇文章主要介绍random模块,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

random [ˈrændəm]:随机的

  • random 模块是 Python的内置模块

  • random 主要用来生成随机数

常用方法:

random.randrange(start, stop, step)

返回一个range(start, stop, step)数组中随机一个数

等价于random.choice(range(start, stop, step))

random.randint(start, stop)

返回[start, stop]内随机一个整数

即random.randrange(start, stop+1)

random.random()

无参数

随机返回一个0~1内的浮点数,不包括1

random.uniform(start, stop)

返回[start, stop]内随机一个浮点数

In:random.uniform(0, 1)out:0.8566146012081072

random.choice(sequence)

传入一个序列(列表、元组、字符串等)

随机返回序列中的一个元素​​​​​​​

In:random.choice([1, 2, 3])out:2In:random.choice('python')out:'p'

random.sample(seq, k)

传入一序列

随机从序列中选择k个元素(不重复)

返回由选择出的k个元素组成的列表​​​​​​​

In:random.sample('python', 2)out:['p', 't']

random.shuffle(list_x)

传入一个列表对象

列表将会被重新排序

不返回任何值​​​​​​​

In[1]:a = [1, 2, 3, 4]In[2]:random.shuffle(a)In[3]:aOut[3]:[2, 3, 1, 4]

random.seed(a)

type(a)为int, float, str等

配合其他随机函数一起使用,调用其他随机模块函数之前调用此函数

当seed()没有参数时,每次生成的随机数是不一样的

当seed()有参数时,每次使用相同随机函数生成的随机数是一样的​​​​​​​

In[1]:random.seed(1)In[2]:random.random()Out[2]:0.9154194752619804In[3]:random.seed(1)In[4]:random.randint(1, 10)Out[4]:3In[5]:random.seed(1)In[6]:random.random()  # 再次使用相同种子调用相同函数,返回值相同Out[6]:0.9154194752619804In[7]:random.seed[1]In[7]:random.randint(1,7)Out[7]:3In[8]:random.seed(1)In[9]:random.randint(1, 8)  Out[9]:6

概率模型

正态分布

random.gauss(mu, sigma)

或random.normalvariate(mu, sigma)

mu是均值, sigma是标准差

​​​​​​​

import randomfrom matplotlib import pyplot as plty = [random.gauss(50, 5) for i in range(10000)]plt.hist(y, 50)plt.show()

图片

beta分布

random.betavariate(alpha, beta)

以beta分布的概率分布返回0到1之间的随机数。

贝塔分布(Beta Distribution) 是一个作为 伯努利分布 和二项式分布的 共轭先验分布 的 密度函数 ,在机器学习和 数理统计学 中有重要应用。. 在 概率论 中, 贝塔分布 ,也称 Β分布, 是指一组定义在 (0,1) 区间的连续 概率分布 。

指数分布

gamma分布

weibull分布

等等

 

最后

以上就是光亮饼干为你收集整理的random模块的全部内容,希望文章能够帮你解决random模块所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部