Python生成随机数详解流程

 更新时间:2022年03月07日 17:05:32   作者:酷尔。  
生成随机数一般使用的就是random模块下的函数,生成的随机数并不是真正意义上的随机数,而是对随机数的一种模拟。random模块包含各种伪随机数生成函数,以及各种根据概率分布生成随机数的函数。今天我们的目标就是摸清随机数有几种生成方式

一、随机数种子

为什么要提出随机数种子呢?咱们前面提到过了,随机数均是模拟出来的, 想要模拟的比较真实,就需要变换种子函数内的数值,一般以时间戳为随机函数种子。 例如以下案例,将随机数种子固定的时候,生成的随机数也将固定。 系统默认以时间戳为种子进行随机数的生成。 单一时间戳

随机时间戳

第一次结果

第二次结果

二、生成随机数

以下一生成10个1-100的随机数为例

1.random()

生成[0-1)的随机数为float型。后面的大部分函数都是基于这个函数进行随机数生成的 想要生成响应区域的随机数可以使用这个函数乘以一个对应的整数

from random import *
for i in range(10):
    print(int(random()*100+1),end=" ")
print()

2.ranint(a,b)

随机生成一个a-b的整数

from random import *
for i in range(10):
    print(randint(1,100),end=" ")

3.randrange(start,stop [,step])

有起始、终止、步长三大要素,在生成随机数的时候包括下限不包括上限。

from random import *
for i in range(10):
    print(int(randrange(1,101)),end=" ")

4.getrandbits(k)

返回一个随机整数,整数的位长为k位。

from random import *
for i in range(10):
    print(int(getrandbits(4)),end=" ")

三、生成随机序列

1.choice(seq)

从给定的序列中随机抽取一个

代码如下:

from random import *
test=[12,3,1,2,33,21]
for i in range(10):
    print(choice(test))

2.samplex(序列,k)

从序列中随机抽取k个元素,这k个元素不会重复。(需要满足len(序列)>=k)

代码如下:

from random import *
test=[1,23,3,22,13]
print(sample(test,3))

3.shuffle(x[,random])

这个函数的目的就是随机排序,在原序列的基础上进行排序

代码如下:

from random import *
test=[1,23,3,22,13]
shuffle(test)
print(test)

到此这篇关于Python生成随机数详解流程的文章就介绍到这了,更多相关Python 生成随机数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python找出因数与质因数的方法

    python找出因数与质因数的方法

    这篇文章主要介绍了python找出因数与质因数的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • Python中模块pymysql查询结果后如何获取字段列表

    Python中模块pymysql查询结果后如何获取字段列表

    pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同。下面这篇文章主要给大家介绍了关于Python中模块pymysql查询结果后如何获取字段列表的相关资料,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来看看详细的介绍。
    2017-06-06
  • Python实现克里金插值法的过程详解

    Python实现克里金插值法的过程详解

    克里金算法提供的半变异函数模型有高斯、线形、球形、阻尼正弦和指数模型等,在对气象要素场插值时球形模拟比较好。本文将用Python实现克里金插值法,感兴趣的可以了解一下
    2022-11-11
  • python注释和运算符详解

    python注释和运算符详解

    这篇文章主要为大家介绍了python注释和运算符,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12
  • python中ASCII码和字符的转换方法

    python中ASCII码和字符的转换方法

    今天小编就为大家分享一篇python中ASCII码和字符的转换方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • Python使用matplotlib模块绘制图像并设置标题与坐标轴等信息示例

    Python使用matplotlib模块绘制图像并设置标题与坐标轴等信息示例

    这篇文章主要介绍了Python使用matplotlib模块绘制图像并设置标题与坐标轴等信息,结合实例形式分析了Python中matplotlib模块进行坐标系图形绘制的相关操作技巧,需要的朋友可以参考下
    2018-05-05
  • Pytorch中torch.utils.checkpoint()及用法详解

    Pytorch中torch.utils.checkpoint()及用法详解

    在PyTorch中,torch.utils.checkpoint 模块提供了实现梯度检查点(也称为checkpointing)的功能,这篇文章给大家介绍了Pytorch中torch.utils.checkpoint()的相关知识,感兴趣的朋友一起看看吧
    2024-03-03
  • Python正则表达式急速入门(小结)

    Python正则表达式急速入门(小结)

    这篇文章主要介绍了Python正则表达式急速入门(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • 测试、预发布后用python检测网页是否有日常链接

    测试、预发布后用python检测网页是否有日常链接

    难免会碰到秀逗了把测试的链接发布到线上的情况,一般这种都是通过一些测试的检查工具来检查链接来规避风险的,下面为大家简述下大概的实现思路
    2014-06-06
  • Windows安装Anaconda3的方法及使用过程详解

    Windows安装Anaconda3的方法及使用过程详解

    今天带大家学习的是关于Python的相关知识,文章围绕着在windows上Anaconda3的安装方法及使用展开,文中有非常详细的介绍,需要的朋友可以参考下
    2021-06-06

最新评论