主要内容
- ramdom包的功能介绍
- random包的常用函数:seed() randrange() randint()
1. random包的功能介绍
random模块主要用于操作各种随机数
注:真正意义上的随机数是不可预测的,是不可见的。
而计算机中的随机数是按照一定算法模拟产生的,其结果是确定的,是可见的。
所以用计算机随机函数所产生的“随机数”并不随机,是伪随机数。
random模块常用于各种场景:
比如可以生成短信验证码,人工智能算法中随机初始化参数等。
2. random包的常用函数:seed()
计算机的伪随机数是由随机种子根据一定的计算方法计算出来的数值。
所以,只要计算方法一定,随机种子一定,那么产生的随机数就是固定的。
只要用户或第三方不设置随机种子,那么在默认情况下随机种子来自系统时钟。
随机数都是根据随机种子来生成的,种子固定,生成的随机数是确定的。
seed()函数的功能就是构建种子,语法如下:
random.seed(a)
参数说明:
a:非必须参数,设置生成随机数所需的种子值。
如果不设置,则默认为None,使用的是当前系统时间。
此函数无返回值
使用程序如下:
import random
random.seed(10) #随机种子设置为10
3. random包的常用函数:randrange()
randrange()方法返回从指定范围内随机选择的整型元素。语法如下:
random.randrange(start, stop, step)
参数说明:
start: 非必须参数,整数类型,指定从哪个数字开始,默认值为0。
stop: 必须参数,整数类型,指定到哪个数字结束,
指定范围不包含stop本身。
step: 非必须参数,整数类型,指定间隔,默认值为1。
例如:
import random #一定要import random模块
print(random.randrange(1, 9)) # 生成1到9,到不包括9的一个随机整数
print(random.randrange(1, 10, 2)) # 生成[1,3,5,7,9]中的一个随机整数
print(random.randrange(1)) #生成[0,1)中的一个随机整数,也就是只能生成0
print(random.randrange(10,1,-2)) # 生成[10, 8, 6, 4, 2]中的一个随机整数
4. random包的常用函数:randint()
randint()方法返回从指定范围内选择的整数元素。语法如下:
random.randint(start, stop)
参数说明:
start: 必须参数,整数类型,指定从哪个数字开始。
stop: 必须参数,整数类型,指定到哪个数字结束,
指定范围包含stop本身。
例如:
import random #一定要import random模块
print(random.randint(1, 9)) # 生成1到9的一个随机整数
print(random.randint(2, 3)) # 生成2和3中的一个随机整数
5. 小结
random模块主要用于操作各种随机数
seed()函数的功能就是构建种子
randrange()方法返回从指定范围内随机选择的整型元素
randint()方法返回从指定范围内选择的整数元素
randint()和randrange()的区别如下:
OJ训练题
1、猴子吃桃 - ★
2、角谷猜想 - ★
3、不定方程求解 - ★
4、多余的数 - ★★
5、Lab杯 - ★★★