Python random库

本文介绍了Python中的random库,探讨了随机数与伪随机数的区别,重点讲解了random库中的基本随机函数如seed()和random(),以及扩展随机函数如randint()、uniform()等,展示了如何利用这些函数进行随机整数生成和序列操作。
摘要由CSDN通过智能技术生成

前言

python里有一个标准库,叫random,在python里求(伪)随机数的库就是random

随机数与伪随机数

从概率论角度来说,随机数是随机产生的数据(比如抛硬币),但时计算机是不可能产生随机值,真正的随机数也是在特定条件下产生的确定值,只不过这些条件我们没有理解,或者超出了我们的理解范围。计算机不能产生真正的随机数,那么伪随机数也就被称为随机数
伪随机数:计算机中通过采用梅森旋转算法生成的 (伪)随机序列元素

库使用

因为它是标准库,可以直接引用

函数

random库包含两类函数,常用的共8个

    基本随机函数: seed(), random()

    扩展随机函数:randint(), getrandbits(), uniform(), randrange(), choice(), shuffle()

基本随机数

Python中产生随机数使用随机数种子来产生 (只要种子相同,产生的随机序列,无论是每一个数,还是数与数之间的关系都是确定的,所以随机数种子确定了随机序列的产生)

随机数种子梅森旋转算法随机序列
10转换0.5714025946899135

随机序列中的每一个数就是随机数

基本随机函数

函数描述
seed(a=None)初始化给定的随机数种子,默认为当前系统时间random.seed(10) #产生种子10对应的序列
random()生成一个[0.0,1.0)之间的随机小数 random.random() 0.5714025946899135

使用随机数种子的好处是可以复现有随机数的程序

扩展随机数函数

在random库中,最基本的是seed 和random 函数,但时功能比较单一,为此产生了6个扩展随机数函数

函数描述
randint(a,b)产生a,b之间的整数
randrange(m,n[,k])生成一个[m,n)之间以k为步长的随机整数 random.randrange(10,100,10)
getrandbits(k)生成一个k比特长的随机整数random.getrandbits(16) 37885
uniform(a,b)生成一个[a,b]之间的随机小数random.uniform(10,100) 16.848041210321334
choice(seq)序列相关 从序列中随机选择一个元素random.choice([1, 2, 3, 4, 5, 6, 7, 8, 9]) 8
shuffle(seq)
序列相关将序列seq中元素随机排列,返回打乱后的序列>>>s=[1, 2, 3, 4, 5, 6, 7, 8, 9]; random.shuffle(s); print(s)[9, 4, 6, 3, 5, 2, 8, 7, 1]

随机数函数的使用要点:

–能够利用随机数种子产生“确定”伪随机数 seed生成种子,random函数产生随机数

–能够产生随机整数

–能对序列类型进行随机操作

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值