代码中经常会用到随机的部分,此时需要使用程序自带的伪随机数发生器,本文记录常用方法。
python 伪随机数产生方法 {#python-伪随机数产生方法}
- python 原生 random 库
- numpy 中 random 包
random 方法 {#random-方法}
Python中的random模块用于生成随机数。下面介绍一下random模块中最常用的几个函数。
random.random() {#random-random}
用于生成一个0到1的随机符点数: 0 <= n < 1.0。
random.uniform(a, b) {#random-uniform-a-b}
用于生成一个在[a, b]均匀分布上的随机数。
random.randint(a, b) {#random-randint-a-b}
用于生成一个指定范围内的整数。
random.choice(sequence) {#random-choice-sequence}
从序列中获取一个随机元素。
random.shuffle(sequence) {#random-shuffle-sequence}
用于将一个列表中的元素打乱。
random.sample(sequence, k) {#random-sample-sequence-k}
从指定序列中随机(无放回)获取指定长度的片断。
numpy.random 方法 {#numpy-random-方法}
np.random.rand(d0, d1, ..., dn) {#np-random-rand-d0-d1-…-dn}
产生 [d0, d1, ..., dn] 维度的随机数矩阵,数据取自[0,1]均匀分布
np.random.randn(d0, d1, ..., dn) {#np-random-randn-d0-d1-…-dn}
产生 [d0, d1, ..., dn] 维度的随机数矩阵,数据取自标准正态分布
np.random.randint(low, high, size) {#np-random-randint-low-high-size}
产生半开半闭区间 [low, high)中的随机整数,返回 size 个
np.random.choice(a, size, replace, p) {#np-random-choice-a-size-replace-p}
a: sequence 或者 数字(表示序列)
size: 取样个数
replace: True 有放回 False 无放回
p: 概率列表
np.random.bytes(length) {#np-random-bytes-length}
返回 length 个随机字节。
np.random.permutation(X) {#np-random-permutation-X}
返回一个随机排列
np.random.shuffle(X) {#np-random-shuffle-X}
现场修改序列,改变自身内容。
参考资料 {#参考资料}
文章链接:
https://www.zywvvd.com/notes/coding/python/python-random/python-random/