random模块介绍
random是python中内置的一个模块,是用来生成伪随机数的模块,并不是真正生成随机数。在日常经常会用到random模块,今天就简单的介绍一下。
random模块常用方法
random.random() | 随机生成一个[0,1)范围内的浮点数并返回此浮点数 |
---|---|
random.randint(a,b) | 给定一个范围,随机生成一个[a,b]的整数并返回此整数 |
random.randrange(a,b,s) | 给定一个范围,随机生成一个[a,b)的整数并返回此整数,s代表步长 |
random.shuffle(x) | 将列表x的顺序打乱,返回值为None |
random.choice(seq) | 从非空序列(列表,字符) seq 返回一个随机元素。 如果 seq 为空,则引发 IndexError。 |
ranomd.seed() | 设置随机数生成器的种子 |
random.sample(data,num) | 从序列中随机抽取多个元素 |
方法演示
import random
# 随机生成从0到1之间的浮点数
f_num = random.random()
print(f_num)
# 随机生成从1到10之间的整数,包括1和10
i_num = random.randint(1, 10)
print(i_num)
# 随机生成1 3 5 7 9 当中的一个数
i_nums = random.randrange(1, 10, 2)
print(i_nums)
# 将list_num打乱 返回值为None
list_num = [1, 2, 3, 4, 5]
random.shuffle(list_num)
print(list_num)
# 从列表中随机选取一个值并返回此值
random_num = random.choice([1, 2, 4, 5])
print(random_num)
# 从序列中抽取多个元素
data = [1, 2, 3, 4]
print(random.sample(data, 2))
seed()随机数种子
随机数种子是什么?相当于给定一个需要生成随机数的初始值,然后按照顺序生成随机数。我们可以用seed()来改变生成器的种子,如果不设置,则使用系统默认种子生成随机数。如果设置相同的种子,且顺序一一对应,则生成的随机数是相同的。如下
import random
# 生成的值对照就会发现是相同的
random.seed(10)
print(random.random())
print(random.random())
# 结果是相同的
random.seed(10)
print(random.random())
print(random.random())
最后如文章有错误,请指正,谢谢大家!!!