通过MCP连接 →

输入计算

用换行或逗号分隔各条目。

数学公式

数学公式: 随机抽名 / 名单乱序工具
Show calculation steps (1)
  1. With replacement

    With replacement: 随机抽名 / 名单乱序工具

    Each of the k draws independently picks a random index j in [0, N), so the same item can repeat and k may exceed N.

广告

结果

已抽取条目
9
of 9 list items
结果
B
Liam
16
Haley
A
25
Ethan
C
34

这个工具能做什么

随机抽名 / 名单乱序工具可以读取你粘贴的任意内容——姓名、数字或普通文本——并从中随机抽取或重新打乱排序。无论是抽奖开奖、随机点名、分组排队、给歌单换顺序,还是单纯打乱原有的排列,它都能轻松搞定。每点击一次,都会生成一份全新的、完全均匀的随机结果。

示意图:名字列表输入到选择器,输出所选的名字
该工具接收一个名字列表,并从中随机选出一个或多个。

使用方法

把你的条目粘贴到输入框中,用换行或逗号隔开即可(两种方式可以混用)。在 抽取数量 中填入你想抽出的条目个数。允许重复 选择 表示不放回抽取(每个条目最多出现一次);选择 则允许同一个条目被多次抽中。你还可以选择把结果按从小到大 / A-Z(或反向)排序,并挑选合适的复制格式,方便直接粘贴到表格或聊天消息里。

计算原理

设 \(N\) 为解析出的条目总数,\(k\) 为你需要抽取的个数。不允许重复时,工具会执行 Fisher-Yates 洗牌算法(\(i\) 从 \(N-1\) 递减到 1,将第 \(i\) 个条目与前面某个随机位置的条目交换),然后返回前 \(m = \min(k, N)\) 个条目;因此当 \(k\) 很大时,相当于直接把整份名单打乱。允许重复时,工具会进行 \(k\) 次独立抽取,每次随机选取一个下标 $$j = \lfloor \text{rand}() \times N \rfloor$$ 所以条目可能重复出现,\(k\) 也可以超过 \(N\)。排序采用自然比较器:看起来像数字的条目按数值大小比较,其余内容按不区分大小写的文本比较。

Advertisement
比较有放回与无放回选取的示意图
无放回时,选取数量受列表大小限制;有放回时,名字可能重复。

实例演示

名单:Liam、Ethan、Haley、34、25、16、A、B、C(\(N = 9\))。抽取数量 = 9,允许重复 = 否,排序 = 不排序。由于 \(k\) 等于 \(N\),这就是一次完整的洗牌,9 个条目会以 \(9! = 362{,}880\) 种等概率排列之一返回,例如:34、Ethan、B、A、25、C、Liam、16、Haley。

常见问题

为什么每次结果都不一样? 抽取本身就是随机的,重新运行自然会得到新的顺序或选择,这是正常设计。

如果我要抽的数量比名单里的条目还多怎么办? 不允许重复时,抽取数量会被限制在名单总数之内(你会得到整份打乱后的名单);允许重复时,则会精确返回你指定的数量。

逗号和空格是怎么处理的? 工具会按逗号和换行进行拆分,自动丢弃空条目(比如末尾多余的逗号),并去掉首尾空格,让结果更整洁。

最后更新: