在Python中,random
模块提供了生成随机数的功能,该模块包含多种函数,可以生成不同类型和范围的随机数。
在使用random
模块之前,请确保已经导入了它:
import random
以下是random
模块中一些常用函数的详解:
random.random()
:
生成一个[0, 1)范围内的随机浮点数。
random_number = random.random()
print("随机数:", random_number)
random.uniform(a, b)
:
生成一个在[a, b]范围内的随机浮点数。
random_number = random.uniform(1, 10)
print("随机数:", random_number)
random.randint(a, b)
:
生成一个在[a, b]范围内的随机整数,包括a和b。
random_number = random.randint(1, 100)
print("随机数:", random_number)
random.randrange(start, stop[, step])
:
生成一个在start
和stop
之间(包括start
,不包括stop
),以step
为步长的随机整数。如果省略step
参数,默认为1。
random_number = random.randrange(1, 10, 2)
print("随机数:", random_number)
random.choice(seq)
:
从一个非空序列(如列表、元组或字符串)中随机选择一个元素。如果序列为空,会引发IndexError
异常。
my_list = [1, 2, 3, 4, 5]
random_element = random.choice(my_list)
print("随机元素:", random_element)
random.sample(population, k)
:
从一个序列或集合中随机选择k个不重复的元素,返回一个新的列表。
my_list = [1, 2, 3, 4, 5]
sample = random.sample(my_list, 3)
print("随机样本:", sample)
random.shuffle(x[, random])
:
将序列x
(通常是列表)中的元素随机打乱,返回None
。请注意,这个函数会就地修改原始序列。
my_list = [1, 2, 3, 4, 5]
random.shuffle(my_list)
print("打乱后的列表:", my_list)
以上是Python random
模块中一些常用函数的介绍。
需要注意的是,random
模块生成的随机数是伪随机数,基于确定性算法生成。
它们不适用于密码学安全场景,需要密码学安全的随机数时,应使用secrets
模块。