• Python random库生成随机数详解


    今天继续给大家介绍Python相关知识,本文主要内容是Python random库生成随机数详解。

    一、Random库简介

    random库是Python的标准库之一,可以使用该库来生成一系列的随机函数。random库使用梅森旋转算法生成一个伪随机序列,在一般的工程实践中,我们可以认为这是一个随机序列。(注意:关于梅森旋转算法,以及伪随机序列等概念,可以参考数学和密码学相关知识)
    random库的使用需要先引用该库,执行命令:

    import random
    
    • 1

    即可。

    二、Random库常用函数

    random库中有两类函数,一种是基本随机函数,另一种是扩展随机数函数。
    基本随机函数又有两个,分别是seed()函数和random()函数。
    seed()函数可以用一个数做参数,表示指定随机数的“种子”,梅森旋转算法生成伪随机数的条件需要一个随机数作为种子,如果这个“种子”是确定的,那么梅森旋转算法生成的随机数序列也是确定的。如果我们不使用这个函数作为“种子”,那么Python会使用当前的系统时间作为种子,同样可以生成一系列的随机数序列。事实上,指定seed()函数,真正作用在于生成一个可复现的随机数序列,这对于一些程序的调试、试验很有帮助。random()函数可以用来生成一个0-1之间的随机小数(包括0,但是不包含1)。
    除了上述基本随机函数外,random库还提供了6个扩展随机函数,这6个函数,可以帮助我们在特定情况下,生成特定的随机序列。这6个函数及其作用如下表所示:

    函数作用
    randint(x,y)随机生成一个介于x和y之间(包含x和y)的整数,x和y必须是整数,并且x必须小于或等于y
    randrange(x,y,k)随机生成一个在x和y之间(包含x和y)的,步长为k的整数。参数k可选,在不指定参数k时,k默认为1
    getrandbits(x)随机生成一个x比特长的随机整数
    uniform(x,y)随机生成一个在x和y之间(包含x和y)的随机小数,这里的x和y大小任意
    choice(seq)在这里seq是一个序列,表示从序列中随机选择一个元素
    shuffle(seq)在这里seq是一个序列,表示将序列中的元素随机排列后返回,注意该函数会影响序列本身

    三、Random库使用示例

    最后,为了更好的帮助大家学习random库,给大家提供一些random库的使用案例。
    random基本随机函数运用如下所示:
    在这里插入图片描述
    从上图中我们可以看到,如果我们使用seed()函数指定了“种子”,那么生成的随机数序列也是固定的,这就实现了“可复现”的随机序列。
    random扩展随机函数如下所示:
    在这里插入图片描述
    原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

  • 相关阅读:
    关于项目编译工具ninja、make、cmake的区别与优劣
    python---pickle模块
    51单片机手持可充电VL53L01激光测距离测量报警激光接近传感器检测系统
    程序员自由创业周记#35:外包、技术选型和卖房
    Netty 入门
    centOS安装MySQL详解
    js中的设计模式之代理模式
    探索Apache Hive:融合专业性、趣味性和吸引力的数据库操作奇幻之旅
    leetcode148-Sort List
    word怎么公式求平均值
  • 原文地址:https://blog.csdn.net/weixin_40228200/article/details/127945326