新闻中心

python random中的随机函数

2025-11-15
浏览次数:
返回列表
Python的random模块基于Mersenne Twister算法提供多种随机函数,适用于模拟、游戏等场景但不用于加密。1. random()生成[0.0,1.0)浮点数;2. uniform(a,b)返回a到b间浮点数;3. randint(a,b)返回a到b间整数(含端点);4. randrange(start,stop,step)从指定range中选整数;5. choice(seq)从序列中选一个元素;6. choices(population,weights,k)带权重可重复选取k个;7. sample(population,k)无重复抽取k个;8. shuffle(x)打乱列表顺序。使用seed()可复现实验结果,常用于测试。

python random中的随机函数

Python 的 random 模块提供了多种生成随机数的函数,适用于不同场景下的随机操作。这些函数基于 Mersenne Twister 算法,是一种伪随机数生成器(PRNG),适合模拟、游戏、抽样等用途,但不适用于加密场景(应使用 secrets 模块)。

常用随机函数说明

1. random.random()

返回一个在 [0.0, 1.0) 范围内的随机浮点数。

示例:

php配置文件php.ini的中文注释版 php配置文件php.ini的中文注释版

php配置文件php.ini的中文注释版是一本由多位作者编著的有关PHP内部实现的开源书籍。从环境准备到代码实现,从实现过程到细节延展,从变量、函数、对象到内存、Zend虚拟机…… 如此种种,道尽PHP之风流。

php配置文件php.ini的中文注释版 376 查看详情 php配置文件php.ini的中文注释版
import random
print(random.random())  # 如:0.374540

2. random.uniform(a, b)

返回 a 和 b 之间的随机浮点数(包含 a 和 b,取决于浮点精度)。

示例:

print(random.uniform(1.5, 4.5))  # 如:3.2847

3. random.randint(a, b)

返回 a 和 b 之间的随机整数(包含 a 和 b)。

示例:

print(random.randint(1, 10))  # 如:7

4. random.randrange(start, stop[, step])

从 range(start, stop, step) 中随机选择一个整数,常用于步长控制。

示例:

print(random.randrange(0, 10, 2))  # 从 [0,2,4,6,8] 中选

5. random.choice(seq)

从非空序列中随机选择一个元素。

示例:

fruits = ['apple', 'banana', 'cherry']
print(random.choice(fruits))  # 如:'banana'

6. random.choices(population, weights=None, k=1)

返回长度为 k 的列表,允许重复选择,可设置权重。

示例:

print(random.choices(['a','b','c'], k=3))  # 如:['a','c','a']

7. random.sample(population, k)

从序列中无重复地随机选取 k 个元素,返回列表。

示例:

numbers = list(range(10))
print(random.sample(numbers, 3))  # 如:[2, 7, 1]

8. random.shuffle(x)

将列表 x 中的元素就地打乱顺序。

示例:

deck = ['A', 'B', 'C', 'D']
random.shuffle(deck)
print(deck)  # 如:['C', 'A', 'D', 'B']

设置随机种子(可复现结果)

使用 random.seed() 可以设定初始状态,使后续随机结果可复现。

示例:

random.seed(42)
print(random.random())  # 每次运行都输出相同的序列

应用场景建议

  • 模拟实验或游戏逻辑时,用 randintchoice
  • 需要无重复抽样时,用 sample
  • 生成带权重的随机选择,用 choices 并传入 weights
  • 确保测试可复现时,记得调用 seed()

基本上就这些,根据实际需求选择合适的方法即可。

以上就是python random中的随机函数的详细内容,更多请关注其它相关文章!


# 相关文章  # 济宁知名网站优化哪家好  # 安徽学院网站建设  # 吉安百度关键词优化排名  # 六安网站建设推广方法  # 企业建设网站作用  # 通州网站建设找哪家好  # 头条怎么搜索网站推广赚钱  # 哈尔滨品牌网站建设  # 嘉兴优化网站方法  # 自建网站推广策略  # 中文网  # python  # 浮点  # 是一种  # 如何做  # 但不  # 随机数  # 浮点数  # 适用于  # 配置文件  # apple  # app  # 随机函数 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: J*aScript map 方法中处理循环元素为空数组的策略  高德地图沿途添加点失败如何解决 高德多点规划方法  蓝湖怎样用切图标注提对接效率_蓝湖用切图标注提对接效率【设计对接】  J*a 递归快速排序中静态变量的状态管理与陷阱  J*aScript 字符串标签转换:使用正则表达式高效替换  React/Next.js中实现列表项的动态移动与状态管理:兼论唯一键的重要性  Lar*el头像管理:图片缩放与旧文件删除的最佳实践  2026年发布! 美少女养成动作RPG《神剑少女战记》发布实机演示  Sublime怎么配置Nim语言环境_Sublime Nim代码高亮与补全  AngularJS $http POST请求数据传递与Go后端接收实践  顺丰快递查单号物流信息 顺丰快递小程序查询入口  Mac怎么锁定备忘录_Mac备忘录加密设置教程  MAC如何安全彻底地删除文件_MAC使用终端命令确保文件无法被恢复  163邮箱网页版入口导航平台 163邮箱网页版登录入口官网导航  uc手机浏览器网页版入口 uc浏览器手机版便捷登录首页  composer 和 npm/yarn 在管理依赖方面有什么核心思想差异?  J*a里如何使用forEach遍历Map_Map遍历方法说明  python3时间如何用calendar输出?  Win11怎么关闭触摸屏_Windows 11禁用HID符合标准触摸屏  处理嵌套交互式控件:前端可访问性指南  谷歌google账号怎么注册账号 谷歌账号注册官方流程  vivo浏览器自带的下载器速度慢怎么办 vivo浏览器提升文件下载速度的技巧  css卡片内容溢出如何处理_使用overflow隐藏或scroll显示内容  《马克思佩恩3》早期版本曝光 UI设计曾多次调整!  C++如何比较两个字符串_C++ string compare函数与操作符对比  HTML空白字符处理机制:渲染、DOM与编码实践  4399体育竞技小游戏_4399小游戏赛事入口  Lar*el递归关系中排除子孙节点的策略  ACG动漫视频网入口 ACG动漫*免费正版观看地址  微博网页版主页入口 微博官方网站免登录访问  抖音网页版企业服务中心登录入口_抖音网页版企业登录平台  优化Django表单:提交验证失败后保留用户输入  Win11输入法不见了怎么办_Windows11恢复语言栏显示方法  ExcelARRAYTOTEXT函数怎么自定义分隔符输出数组文本_ARRAYTOTEXT实现动态生成SQL语句  Win10双系统截图高效法 截屏快捷键速记【技巧】  微信网页版官方快速登录入口 微信网页版网页版账号直达  DLsite中文平台入口 DLsite官网内容在线查看  QQ邮箱网页版登录入口 QQ邮箱官方在线使用平台  Yandex搜索引擎官网入口_俄罗斯Yandex免登录一键直达  Excel中VLOOKUP的第四个参数是干什么用的_Excel VLOOKUP第四参数作用解析  内存检查:在VS Code中调试C++时的内存视图  Win10桌面图标出现小盾牌怎么办 Win10去除UAC图标教程【解决】  电脑IP地址怎么查 查看本机IP地址的几种方法  C++ explicit关键字防止隐式转换_C++构造函数安全规范  html怎么运行外部js文件中的函数_运html外js文件函数法【技巧】  PHP表单数据传递:如何通过隐藏输入字段获取动态ID  C++ vector二维数组定义_C++ vector of vector用法  如何仅使用CSS更改登录界面背景图像图标的颜色  俄罗斯浏览器官网直达链接 俄罗斯浏览器最新在线入口导航  Fabric模组开发:自定义物品与物品组的现代管理方法 

搜索