随机数常见用法

54 0

随机数生成就是在给定范围内按均匀概率取出整数或小数,常用于抽签、分组、抽样和程序测试。下面说明常见的使用场景。

随机数常见用法

  • 课堂随机点名、抽座位号
  • 活动抽奖、抽取幸运号码
  • 统计抽样、随机分组
  • 软件测试时生成测试数据
  • 游戏中掷骰子、洗牌

示例

输入:范围 1–6,个数 3,不重复

生成结果:示例:5、2、1

说明:区间共 6 个整数,每个数被抽中的概率为 1/6,期望值为 3.5;不重复抽取 3 个的排列数为 120。

常用选项

  • 最小值、最大值:闭区间,两端都可能被取到
  • 个数:一次生成多少个
  • 允许重复 / 不重复
  • 排序:不排序、升序或降序
  • 整数或小数,以及小数位数

实用技巧

  • 可复现实验:记录种子
  • 分组:先打乱名单再按顺序切分
  • 加权抽取:使用 random.choices 的 weights 参数
  • 大范围不重复:使用洗牌算法而不是反复抽取去重
  • 安全令牌:secrets.token_hex(16)

Python 示例

下面是用 Python 实现的写法,可以按需要修改:

import random, secrets
print(random.randint(1, 100))            # 普通伪随机
print(random.sample(range(1, 101), 5))   # 不重复取 5 个
print(secrets.randbelow(100) + 1)        # 安全随机 1–100

本站的随机数生成器工具可以直接在网页中使用,无需安装,适合快速得到和核对结果。

常见问题

【随机数生成器真的随机吗?】计算机生成的一般是伪随机或安全随机数,统计上足够均匀;安全随机数还具有不可预测性。

【可以设置不重复吗?】可以,不重复相当于无放回抽样,个数不能超过范围内的整数个数。

【怎样生成小数?】选择小数模式并设置位数,或生成整数后除以 10 的幂。

文中示例可以在本站对应工具中核对。

署名:123问编辑部 · 最近修订:2026-11-11 · 已按编辑与审核说明检查;内容仅供参考,不构成医疗、法律或投资建议。发现错误可查看纠错方式。

标签: 实用工具

抱歉,评论功能暂时关闭!