使用Random函数产生随机数

本文介绍了Random函数的用途及使用方法。Math.random()可产生0 - 1之间的任意小数,结合Math.round()、Math.ceil()、Math.floor()等函数能生成不同范围的随机数,如生成0或1、1到10、5到20等范围的随机数,还给出通用公式。
部署运行你感兴趣的模型镜像

作者: Dennis Bale
翻译: Candy
难度: 中级

 

Random函数是非常有用的,可以生成基本的随机数,创建随机的移动,以及随机的颜色和其他更多的作用。

基本的Random函数如下

Math.random();

可以产生出0-1之间的任意小数,例如0.0105901374530933 或
0.872525005541986,有几个其他的函数可以用来改变产生的数字,从而可以更好的在你的影片中使用:

Math.round();
Math.ceil();
Math.floor();


这几个函数都是用来取得整数的,Math.round();是采用四舍五入方式取得最接近的整数。Math.ceil();是向上取得一个最接近的整数,Math.floor();
Math.ceil();相反,Math.floor();向下 取得一个最接近的整数

结合这些函数,你就可以这样写:

Math.round(Math.random());


这个表达式可以生成一个0.0和1.0之间的一个数,然后四舍五入取得一个整数。这样所生成的数字就是0或1。这个表达式可以用在各有50%的可能的情况下,例如抛硬币,或者true/false指令。

*10 是将你所生成的小数乘以10,然后四舍五入取得一个整数:

Math.round(Math.random()*10);


要创建一个1到10之间的随机数,可以这样写:

Math.ceil(Math.random()*10);


应为是Math.ceil向上取值,所以不会产生0。要创建一个5到20的随机数可以这样写

Math.round(Math.random()*15)+5;


也就是说,如果要创建一个从x到y的随机数,就可以这样写

Math.round(Math.random()*(y-x))+x;


x和y可以是任何的数值,即使是负数也一样。

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

Python中使用random产生随机数有多种方法,random库包括两类函数,常用共8个基本随机数函数,可分为基本随机数函数和扩展随机数函数 [^3]。 基本随机数函数有`seed()`和`random()` 。`seed()`函数用于设定随机数种子,使随机数可重复生成;`random()`函数基于梅森旋转算法生成一个`[0.0, 1.0)`范围内的随机浮点数,是其他随机数函数的基础 [^1][^3]。示例代码如下: ```python import random # 设置随机数种子 random.seed(10) # 生成[0.0, 1.0)范围内的随机浮点数 num = random.random() print(num) ``` 扩展随机数函数有`randint()`、`getrandbits()`、`uniform()`、`randrange()`、`choice()`和`shuffle()` [^3]。具体介绍如下: - `randint(a, b)`:生成一个`[a, b]`范围内的随机整数。示例代码: ```python import random # 生成[1, 10]范围内的随机整数 num = random.randint(1, 10) print(num) ``` - `getrandbits(k)`:生成一个`k`比特长的随机整数。示例代码: ```python import random # 生成一个3比特长的随机整数 num = random.getrandbits(3) print(num) ``` - `uniform(a, b)`:生成一个`[a, b]`范围内的随机浮点数。示例代码: ```python import random # 生成[1.0, 5.0]范围内的随机浮点数 num = random.uniform(1.0, 5.0) print(num) ``` - `randrange(start, stop[, step])`:从`[start, stop)`中以`step`为步长选取一个随机整数。示例代码: ```python import random # 生成[1, 10)范围内,步长为2的随机整数 num = random.randrange(1, 10, 2) print(num) ``` - `choice(seq)`:从序列`seq`中随机选择一个元素。示例代码: ```python import random # 定义一个序列 seq = [1, 2, 3, 4, 5] # 从序列中随机选择一个元素 num = random.choice(seq) print(num) ``` - `shuffle(x)`:将序列`x`中的元素随机打乱顺序。示例代码: ```python import random # 定义一个序列 x = [1, 2, 3, 4, 5] # 打乱序列顺序 random.shuffle(x) print(x) ```
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值