Python标准库random模块详解:基础与扩展函数用法

Owen
Owen
发布时间:2026-10-15| 6人浏览过
原创

本文详细介绍Python标准库random模块的核心功能,涵盖基本随机函数seed()与random()的使用,以及扩展函数如randint、uniform、triangular和betavariate的具体应用。通过示例代码解析随机数种子的确定性生成机制及各类分布随机数的参数设置,帮助开发者快速掌握Python随机数生成的常用技巧。

1. random库基本介绍

Random库是Python中用于生成随机数的标准库。

  • 其生成的伪随机数采用梅森旋转算法,产生伪随机序列中的元素。
  • Random库的主要用途是生成各种类型的随机数。
  • 使用random库时,需通过import random语句导入模块。

2. random库概述

Random库包含两类函数,其中常用的共有8个。

  • 基本随机函数包括seed()和random()。
  • 扩展随机函数包括randint()、getrandbits()和uniform()。
  • 其他扩展函数包括randrange()、choice()和shuffle()。

2.1 基本随机函数

  • 涉及随机数种子的概念。

  • 介绍基本随机函数的具体用法。


示例 1


>>> import random      #调用random模块
>>> random.seed(5)
>>> random.random()
0.6229016948897019
>>> random.random()
0.7417869892607294

示例 2


>>> import random
>>> random.seed(5)
>>> random.random()
0.6229016948897019
>>> random.seed(5)
>>> random.random()
0.6229016948897019

2.2 扩展随机函数

介绍扩展随机函数的具体用法。

3. 随机数函数的使用

  • 通过设置随机数种子,可以产生确定的伪随机数序列。
  • 能够生成随机整数。
  • 能够对序列类型执行随机操作。

4. 实例

1. 使用random.random()生成一个介于0.0到1.0之间的浮点数。


>>> import random
>>> random.random()    #调用random()方法
0.594515103049593
>>> 

2. 使用random.uniform(a, b)在指定范围内获取随机数。该方法返回一个随机浮点数N:若a小于等于b,则返回a<=N<=b;若a大于等于b,则返回b<=N<=a。


>>> random.uniform(1,8)   #在【1,8】范围内获取一个随机浮点数
2.9432430789720927
>>> random.uniform(9,6)
6.502188530262087
>>> random.uniform(-10,-1)
-1.6640665895566507
>>> 

3. 使用random.triangular(low, high, mode)返回三角形分布的随机数。

该方法返回一个随机浮点数N,满足low<=N<=high,并在边界内指定mode。low和high默认值分别为0和1,mode参数默认为边界之间的中点。若持续使用该方法,可得到以mode为对称点的随机分布数据集。


>>> random.triangular()   #在默认情况下产生一个三角形分布随机数
0.764537932523999
>>> random.triangular(1,12)  #指定【low,high】范围参数
3.2879057952571604
>>> random.triangular(11,12,20)     #指定low、high、mode参数
11.832700021006795
>>> random.triangular(0,5,10)
6.032774679089732
>>> 

4. 使用random.betavariate(alpha, beta)求Beta分布,参数条件为α>0且β>0,返回值范围介于0和1之间。


>>> random.betavariate(5,8)   #求Beta随机分布值
0.2348237132951728
>>> 

对于标准库,只需了解每个类的使用方法及参数的含义与用途,即可快速上手Python标准库。其唯一缺点是需要简单记忆几个经常使用的方法,这可能稍显费脑。

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注本站的更多内容!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。