2023年政策修订增补工作正在进行中,欢迎参与!
  • Moegirl.ICU:萌娘百科流亡社群 581077156(QQ),欢迎对萌娘百科运营感到失望的编辑者加入
  • Moegirl.ICU:账号认领正在试运行,有意者请参照账号认领流程

模板:Random

萌娘百科,萬物皆可萌的百科全書!轉載請標註來源頁面的網頁連結,並聲明引自萌娘百科。內容不可商用。
跳至導覽 跳至搜尋
Template-info.svg 模板文檔  [查看] [編輯] [歷史] [刷新]

簡介

該模板可以按參數生成指定範圍的隨機數。

注意:由於頁面的緩存機制,生成的隨機數在一定時間內是不會改變的。

用法

{{random}}                   <!-- 形式1:输出随机数0或1 -->

{{random|raw}}               <!-- 形式2:输出0到1之间的随机浮点数 -->

{{random|最大值}}            <!-- 形式3:输出0到指定的最大值之间的整数,输入的值必须为整数 -->

{{random|最小值|最大值}}     <!-- 形式4:输出指定的最小值到最大值之间的整数,若最小值大于最大值,则它们将发生互换。最小值和最大值都必须为整数 -->

額外參數

  • count:指定輸出多少隨機數,根據指定隨機數的形式不同,其行為也不同,各個隨機數由半角逗號,隔開,可以使用{{split}}模板進行分割使用。
    • 形式1:生成每個隨機數之前都將重新設置隨機數種子,這可以增加隨機性,但並沒有什麼明顯的表現。
    • 形式2:沒有其他額外的行為。
    • 形式3和4:當count不大於隨機數範圍的枚舉總數時,將生成不重複的隨機數。若大於了枚舉總數,則大於的部分失去不重複的特性;若設置了下述隨機參數,則全部失去不重複的特性。
  • allowrepeat:指定此參數時,形式3和4生成的前一部分隨機數不再保證不重複。

示例

示例1

{{random}}{{random}}{{random}}{{random}}{{random}}
結果

11101

示例2

{{random|raw}}<br />{{random|raw}}<br /><br />{{random|10}}<br />{{random|10}}<br /><br />{{random|20|50}}<br />{{random|20|50}}
結果

0.33250960210921
0.69252784582438

0
9

43
41

示例3

利用{{split}}模板分割獲取的隨機數字符串。

单纯输出:{{random|1|10|count=10}}

利用split模板进行分割:{{split|{{random|1|10|count=10}}|,|random}}

{{#var:random1}}

{{#var:random10}}

單純輸出:6,3,10,7,4,1,8,5,2,9

利用split模板進行分割:

9

10

示例4

可以看到,不設定allowrepeat參數時,超出了隨機數範圍的枚舉總數(5)後,發生了重複。

{{random|1|5|count=10}}

{{random|1|5|count=10|allowrepeat=y}}

4,1,5,2,3,2,2,3,1,4

4,3,5,1,1,1,1,3,1,4