当前位置: 首页 > news >正文

python random 库

Python的random库提供了丰富的函数来生成随机数和进行随机操作。下面这个表格汇总了最常用的函数,方便你快速查阅。

函数名 用法示例 功能说明
random() random.random() 生成一个[0.0, 1.0)范围内的随机浮点数。
randint(a, b) random.randint(1, 10) 生成一个指定范围[a, b]内的随机整数,包含上下边界
uniform(a, b) random.uniform(1.5, 10.5) 生成一个指定范围[a, b]内的随机浮点数。
choice(seq) random.choice(['apple', 'banana']) 从非空序列(如列表、元组)中随机选择一个元素返回。
shuffle(seq) random.shuffle([1, 2, 3, 4, 5]) 将序列中的元素原地随机打乱顺序,只支持可变序列(如列表)。
sample(seq, k) random.sample([1,2,3,4,5], 3) 从序列中随机抽取k个不重复的元素,返回一个新列表,原序列不变。
randrange(start, stop[, step]) random.randrange(0, 10, 2) range(start, stop, step)的结果中随机选择一个整数,不包含stop
seed(a=None) random.seed(42) 初始化随机数生成器。给定相同的种子,将产生相同的随机数序列,用于结果复现。
gauss(mu, sigma) random.gauss(0, 1) 生成一个服从高斯分布(正态分布)的随机浮点数,mu为均值,sigma为标准差。
choices(seq, k=1) random.choices([1,2,3], k=2) 从序列中随机抽取k个元素,抽取是可重复的(即有放回抽样)。

💡 使用须知与技巧

  • 伪随机性random库生成的是伪随机数,其序列由种子(seed)决定。默认使用系统时间作为种子,所以每次运行结果不同。通过random.seed()设置固定种子,可以让随机过程可复现,这在模型训练和调试时非常有用。
  • 线程安全:在多线程程序中,最好为每个线程创建独立的Random实例,以避免全局状态冲突。
  • 安全警示random库不适合用于密码学、密钥生成等安全敏感场景。这类需求请使用secrets模块。

💎 应用场景

random库的函数在诸多场景中发挥重要作用:

  • 游戏开发:随机生成敌人、道具或随机事件(如choice())。
  • 模拟实验:模拟掷骰子(randint(1, 6))、洗牌(shuffle())等。
  • 数据分析与机器学习:随机划分训练集和测试集(sample()shuffle()),数据增强(如随机旋转图片)。
  • 随机抽样:从大量数据中随机抽取样本进行分析(sample()choices())。

希望这份总结能帮助你更好地使用Python random库。如果你有更具体的应用场景想了解,我可以提供更细致的例子。

http://www.jsqmd.com/news/263005/

相关文章:

  • 【小程序毕设全套源码+文档】基于微信小程序的面向小学生的阅读交流系统设计与实现(丰富项目+远程调试+讲解+定制)
  • 杭州性价比高的隔膜气压罐工厂排名有吗? - 工业品牌热点
  • 2026国产时序数据库全景盘点:聚焦金仓融合多模架构的差异化之路
  • Linux I/O多路复用技术详解:Select、Poll 和 Epoll
  • 【小程序毕设全套源码+文档】基于微信小程序的上门做菜预定服务平台设计与实现(丰富项目+远程调试+讲解+定制)
  • 深入解析:【JavaSE】十九、JVM运行流程 类加载Class Loading
  • 2026年求推荐靠谱的AI智能办公鼠标,南方网通鸿容鼠标别错过 - 工业品牌热点
  • Tops新年赛总结
  • VisionMaster之上下相机对位贴合
  • IPTools v5.0.8.3 专业 IP 地址修改与网卡配置工具
  • 总结2026年轴承老牌代理厂家,伯陆商城优势显著 - 工业品牌热点
  • 2026年苏州食材配送一站式服务保障排名,旺利涛食品实力上榜! - 工业品牌热点
  • 聊聊专业翻译企业,天使翻译公司质量保障与服务优势有哪些? - 工业品牌热点
  • 2026年市面上做得好的高架库企业排名,高架库/智能仓储/智能仓库/立体仓储/全自动仓库,高架库公司如何选 - 品牌推荐师
  • 2026必备!9个AI论文工具,专科生轻松搞定毕业论文!
  • 强烈安利!10个AI论文工具测评,本科生毕业论文必备
  • 1月17号和18号总结
  • 人生死机了?别慌,这是系统升级
  • 【参数优化】基于带动态边界 + 周期性重置 + 惯性权重衰减的粒子群优化三环自动驾驶仪设计二阶 高阶控制系统的双参数控制器附matlab代码
  • 解决局域网 NAS 远程桌面连接失败:火绒“误伤”排查实录
  • 树剖总结
  • Flutter 与开源鸿蒙(OpenHarmony)国际化、无障碍与合规开发实践:打造全球可用的可信应用 - 详解
  • Invicti Standard v26.1.0 for Windows - 企业级 Web 应用与 API 安全
  • 课题:PLC控制的变频电梯系统的设计(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码
  • Comsol脉冲涡流无损检测仿真 图一:脉冲涡流仿真,检出电压信号 图二:脉冲涡流模型 图三:...
  • 哈希表的c++实现及其常用函数
  • 自动售货机(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码
  • [Vulkan 实战] 深入解析 Dynamic Uniform Buffers:高效绘制多物体的利器
  • 基于PLC自动门控制系统设计(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码
  • 我国农产品标准化的对外贸易效应分析(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码