本文将从以下几个方面详细介绍如何使用Python生成随机数。
一、random模块的使用
Python内置的random模块能够生成伪随机数,使用该模块,可以生成随机数、随机整数等,同时也可以用于列表洗牌(shuffling)和抽样(sampling)等操作。
import random
# 生成[a, b]之间的随机整数
rand_int = random.randint(a, b)
# 生成[0, 1)之间的随机实数
rand_float = random.random()
# 在序列中随机选择一个元素
rand_choice = random.choice(sequence)
# 打乱序列中元素的排列
random.shuffle(sequence)
# 从序列中随机选取k个元素
rand_sample = random.sample(sequence, k)
二、numpy模块的使用
除了使用Python内置的random模块,我们还可以使用第三方库numpy生成随机数,numpy提供了多种分布的随机数生成方式,常用的有:正态分布、均匀分布、二项分布等。
import numpy as np
# 生成[0, 1)之间形状为(d0, d1, ..., dn)的随机实数
rand_arr = np.random.rand(d0, d1, ..., dn)
# 生成[a, b)之间形状为(d0, d1, ..., dn)的随机实数
rand_uniform = np.random.uniform(a, b, (d0, d1, ..., dn))
# 生成符合正态分布的形状为(d0, d1, ..., dn)的随机实数
rand_normal = np.random.normal(mean, std, (d0, d1, ..., dn))
# 生成符合二项分布的形状为(d0, d1, ..., dn)的随机实数
rand_binomial = np.random.binomial(n, p, (d0, d1, ..., dn))
三、UUID模块的使用
如果需要生成唯一的标识符,可以使用Python内置UUID模块,生成的UUID可以保证在全球范围内唯一。
import uuid
# 生成UUID
rand_uuid = uuid.uuid4()
四、random函数的使用
Python内置的random()方法可以生成[0, 1)范围内的随机实数,多次调用random()方法可以生成随机序列。
import random
# 生成[0, 1)之间的随机实数
rand_float = random.random()
五、secrets模块的使用
Python3.6以后版本的secrets模块提供了生成真正的随机数的方法,与Python内置的random模块相比,secrets更加安全可靠。
import secrets
# 生成[0, 1)之间的随机实数
rand_float = secrets.randbelow(1)
原创文章,作者:GGZRA,如若转载,请注明出处:https://www.506064.com/n/375124.html