【python如何使用随机模块】

当然可以!Python 的 random 模块提供了生成随机数的函数。以下是如何使用 random 模块的一些基本示例和说明:

导入模块

首先,你需要导入 random 模块:

python 复制代码
import random

生成随机整数

  • random.randint(a, b):返回范围在 [a, b] 内的一个随机整数,包括 ab
python 复制代码
random_int = random.randint(1, 10)  # 生成1到10之间的随机整数
print(random_int)
  • random.randrange(start, stop[, step]):返回范围在 [start, stop) 内的一个随机整数,步长为 step。如果不指定 step,则默认步长为 1。
python 复制代码
random_range = random.randrange(0, 100, 5)  # 生成0到95之间(包含0,不包含100)的随机整数,步长为5
print(random_range)

生成随机浮点数

  • random.uniform(a, b):返回范围在 [a, b] 内的一个随机浮点数。
python 复制代码
random_float = random.uniform(1.0, 10.0)  # 生成1.0到10.0之间的随机浮点数
print(random_float)

从序列中随机选择

  • random.choice(seq):从非空序列 seq 中随机选择一个元素。
python 复制代码
colors = ['red', 'green', 'blue', 'yellow']
random_color = random.choice(colors)  # 从列表中随机选择一个颜色
print(random_color)
  • random.choices(population, weights=None, *, cum_weights=None, k=1, p=None):从 population 序列中随机选择 k 个元素,可以指定每个元素的权重 weights
python 复制代码
fruits = ['apple', 'banana', 'cherry']
weights = [10, 1, 1]  # apple 被选中的概率更高
random_fruits = random.choices(fruits, weights=weights, k=3)  # 从列表中随机选择3个水果,根据权重
print(random_fruits)

生成随机样本

  • random.sample(population, k):返回从总体序列或集合 population 中随机选取的 k 个不重复的元素。
python 复制代码
numbers = list(range(1, 11))
random_sample = random.sample(numbers, 3)  # 从列表中随机选择3个不重复的数字
print(random_sample)

打乱序列

  • random.shuffle(x[, random]):就地打乱列表 x 的元素。
python 复制代码
deck = ['A', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K']
random.shuffle(deck)  # 打乱列表中的元素顺序
print(deck)

生成随机值

  • random.random():返回 [0.0, 1.0) 范围内的随机浮点数。
python 复制代码
random_value = random.random()  # 生成0.0到1.0之间的随机浮点数
print(random_value)
  • random.gauss(mu, sigma):返回符合高斯分布的随机浮点数,mu 是均值,sigma 是标准差。
python 复制代码
random_gauss = random.gauss(0, 1)  # 生成符合均值为0,标准差为1的高斯分布的随机浮点数
print(random_gauss)
  • random.expovariate(lambd):返回符合指数分布的随机浮点数,lambd 是 1/λ,其中 λ 是速率参数。
python 复制代码
random_expo = random.expovariate(1.0)  # 生成符合速率为1.0的指数分布的随机浮点数
print(random_expo)
  • random.gammavariate(alpha, beta):返回符合伽马分布的随机浮点数,alpha 是形状参数,beta 是尺度参数。
python 复制代码
random_gamma = random.gammavariate(2.0, 1.0)  # 生成符合形状参数为2.0,尺度参数为1.0的伽马分布的随机浮点数
print(random_gamma)
  • random.triangular(low, high, mode):返回一个符合三角分布的随机浮点数,low 是下限,high 是上限,mode 是众数。
python 复制代码
random_triangular = random.triangular(1, 10, 5)  # 生成符合下限为1,上限为10,众数为5的三角分布的随机浮点数
print(random_triangular)
  • random.betavariate(alpha, beta):返回一个符合贝塔分布的随机浮点数,alphabeta 是形状参数。
python 复制代码
random_beta = random.betavariate(1.0, 1.0)  # 生成符合形状参数为1.0, 1.0的贝塔分布的随机浮点数
print(random_beta)
  • random.paretovariate(alpha):返回一个符合帕累托分布的随机浮点数,alpha 是形状参数。
python 复制代码
random_pareto = random.paretovariate(5.0)  # 生成符合形状参数为5.0的帕累托分布的随机浮点数
print(random_pareto)
  • random.weibullvariate(alpha, beta):返回一个符合威布尔分布的随机浮点数,alpha 是形状参数,beta 是尺度参数。
python 复制代码
random_weibull = random.weibullvariate(1.0, 2.0)  # 生成符合形状参数为1.0,尺度参数为2.0的威布尔分布的随机浮点数
print(random_weibull)

这些是 random 模块提供的一些主要功能。根据你的需求,你可以选择适合你的函数来生成随机数或进行随机选择。

相关推荐
FL16238631297 分钟前
基于C#winform部署软前景分割DAViD算法的onnx模型实现前景分割
开发语言·算法·c#
weixin_5806140011 分钟前
模型持久化不会提升准确率:揭秘训练集误用导致的“虚假精度”陷阱
jvm·数据库·python
2401_8877245012 分钟前
Layui弹出层layer.tab如何监听标签页切换的具体序号
jvm·数据库·python
郭wes代码14 分钟前
大三Java课设:一行行敲出来的贪吃蛇,老师以为我是CV的
java·开发语言
2501_9142459327 分钟前
构建 Go CLI 应用的最佳实践:纯 Go 交互式命令行库选型与使用指南
jvm·数据库·python
m0_5145205728 分钟前
Go语言变量如何声明和使用_Go语言变量定义完整教程【通俗】
jvm·数据库·python
John.Lewis32 分钟前
C++进阶(12)附加学习:STL之空间配置器(了解)
开发语言·c++·笔记
weixin_5860614640 分钟前
CSS Grid布局如何解决图片溢出网格单元_设置object-fit与网格尺寸.txt
jvm·数据库·python
计算机徐师兄1 小时前
Python基于农村和城镇人民生活数据的可视化系统(附源码,文档说明)
python·生活·农村和城镇人民生活数据·python人民生活数据·农村和城镇人民生活数据可视化·生活数据可视化系统·python生活数据的可视化
Byron Loong1 小时前
【网络】Python 怎么做TCP通讯
网络·python·tcp/ip