Template:Random
跳到导航
跳到搜索
简介
该模板可以按参数生成指定范围的随机数。
注意:由于页面的缓存机制,生成的随机数在一定时间内是不会改变的。
用法
{{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}}
- 结果
00110
示例2
{{random|raw}}<br />{{random|raw}}<br /><br />{{random|10}}<br />{{random|10}}<br /><br />{{random|20|50}}<br />{{random|20|50}}
- 结果
0.50508286035856
0.36354132339523
2
6
33
47
示例3
利用{{split}}模板分割获取的随机数字符串。
单纯输出:{{random|1|10|count=10}} 利用split模板进行分割:{{split|{{random|1|10|count=10}}|,|random}} {{#var:random1}} {{#var:random10}}
单纯输出:8,3,4,7,1,6,9,10,2,5
利用split模板进行分割:
7
3
示例4
可以看到,不设定allowrepeat
参数时,超出了随机数范围的枚举总数(5)后,发生了重复。
{{random|1|5|count=10}} {{random|1|5|count=10|allowrepeat=y}}
3,4,1,2,5,2,3,1,2,4
2,5,5,4,1,5,5,3,1,1