程序代码篇---Python随机数


文章目录


前言

以上就是今天要讲的内容,本文仅仅简单介绍了Python随机数函数。


Python随机数函数

在Python中,生成随机数通常是通过random模块来实现的。以下是一些常用的随机数函数及其详细解释:

random.random()

  1. random.random()
    用途:返回一个**[0.0, 1.0)范围内的 随机浮点数**。
    示例:random.random() 可能返回0.4356245或其他任何在此范围内的值。

random.randint(a,b)

  1. random.randint(a, b)
    用途:返回一个**a, b范围内的 随机整数**,包括端点a和b。
    示例:random.randint(1, 10) 可能返回7,这个值在1到10之间(包含1和10)。

random.randrange(start,stop,step)

  1. random.randrange(start, stop, step)
    用途:从指定范围内,按指定基数递增的集合中获取一个随机数 。start是范围的起始值,stop是结束值,但不包含在范围内,step是递增基数。
    示例:random.randrange(0, 101, 5) 可能返回0, 5, 10, ..., 95, 100中的一个值。

random.uniform(a,b)

  1. random.uniform(a, b)
    用途:返回一个**a, b范围内的 随机浮点数**,包括端点a和b。
    示例:random.uniform(1, 10) 可能返回5.234325或其他任何在此范围内的值。

random.choice(sequence)

  1. random.choice(sequence)
    用途:从一个非空序列中 随机选取一个元素 。
    示例:random.choice('苹果', '香蕉', '樱桃') 可能返回'香蕉'。

random.sample(population,k)

  1. random.sample(population, k)
    用途:从指定的序列中随机获取指定长度的片段 。不会修改原序列。
    示例:random.sample(1, 2, 3, 4, 5, 3) 可能返回2, 4, 1。

random.shuffle(x,random)

  1. random.shuffle(x, random)
    用途:用于将一个列表中的元素打乱顺序 。
    示例:random.shuffle(1, 2, 3, 4, 5) 可能将列表修改为3, 1, 4, 5, 2。

random.seed(a=None)

  1. random.seed(a=None)
    用途:初始化随机数生成器 。如果不提供a或者a为None,则使用系统时间为种子 。如果提供了a,则使用提供的值作为种子。
    示例:random.seed(10),之后生成的随机数序列将是可预测的 。
    需要注意的是,random模块提供的随机数生成器是伪随机的 ,也就是说,它并不是真正意义上的随机,而是基于算法计算出来的 ,看起来像是随机的数字序列。如果需要更高质量的随机数,可以使用secrets模块,它专门为密码学安全设计,提供了生成加密强度随机数的函数。

下面是一个使用random模块的简单示例:

python 复制代码
import random

#生成一个0.0到1.0之间的随机浮点数
print(random.random())

#生成一个1到10之间的随机整数
print(random.randint(1, 10))

#从列表中随机选择一个元素
print(random.choice(['苹果', '香蕉', '樱桃']))

#打乱列表元素的顺序
items = [1, 2, 3, 4, 5]
random.shuffle(items)
print(items)

每次运行上述代码,得到的结果都可能不同,因为它们依赖于随机数生成器。


总结

以上就是今天要讲的内容,本文仅仅简单介绍了Python随机数函数。

相关推荐
pusheng202522 分钟前
普晟传感再获“消防产业核心配套优质品牌”:以可靠传感技术,让全球合规变简单
大数据·前端·人工智能·物联网·安全
Java后端的Ai之路33 分钟前
15_ReactJS_Flux_简介
前端·react.js·前端框架
曲径海盗1 小时前
【Python 学习第 32 天】字符串基础
python·学习笔记·编程入门
定栓1 小时前
Webpack迁到Vite第五节:第三方库兼容
前端·webpack·node.js
NGINX开源社区1 小时前
与我们交流:NGINX Gateway Fabric 与 NGINX Ingress Controller 社区会议
java·服务器·前端
田里的水稻1 小时前
PyTorch_torchvision---数据集下载\TensorBoard可视化
人工智能·pytorch·python·深度学习·机器学习
程序员正茂1 小时前
Win11使用自定义训练集训练ncnn模型
python·yolo·图像识别·移动端·ncnn
zwd20051 小时前
Manim 画布尺寸与像素换算详解:frame_width、frame_height、pixel_width 和画质参数(0.21.0 实测)
python·分辨率·manim·数学动画·frame_width·manim教程
ShineWinsu2 小时前
对于CSS:弹性布局(Flexbox)的解析
前端·css·面试·浏览器·web·网页·弹性布局
山雀~2 小时前
第5次百日救赎计划
前端