python中生成随机数主要使用random模块和numpy库中的random函数。
前者主要用于生成随机数和实现序列中随机数和随机数列的挑选,后者用来生成a*b维的随机矩阵。
random模块中将近有7个函数都是可以用来生成随机数,列举如下:
功能:随机生成一个[0, 1)的浮点数
示例:
import random
number = random.random()
print(number)
print('%.2f' % number)
输出:
0.2527991999717836
0.25
功能:随机生成一个[a, b)的浮点数
功能:随机生成一个[a, b)的整数
功能:在随机生成的以<以a为始,每step递增,以b为终>这样的一个整数序列中随机选择一个数
功能:从一个已有的sequence中随机选择一个元素
功能:从某一序列中获取指定长度的片段(随机选取K个,没有顺序)
import random
sequence=['apple','banana','orange']
l=random.sample(sequence,2)
print(l)
输出:
['orange', 'banana']
功能:打乱一个列表的元素顺序(打乱的是列表本身,无返回值)
import random
sequence=['apple','banana','orange']
random.shuffle(sequence)
print(sequence)
输出:
['orange', 'banana', 'apple']
功能:生成a*b维的随机数,且该数服从标准正太分布(可以有若干个参数)
import numpy as np
data=np.random.randn(2,3)
print(data)
输出:
[[ 0.59902266 -1.28310532 0.18559999]
[-0.80967754 -0.27517062 -1.29925769]]
功能:生成一个<以low为下限,high为上限,size大小>的随机整数矩阵,其中数值范围包含low,不包含high
data = np.random.randint(low=2,high=5,size=(5,7))
# 输出:
array([[4, 2, 4, 4, 4, 4, 2],
[4, 2, 2, 4, 3, 3, 3],
[3, 4, 3, 4, 3, 3, 4],
[3, 4, 2, 3, 3, 2, 2],
[3, 3, 3, 3, 2, 3, 2]])
(1)random模块主要用于生成随机数和实现序列中随机数和随机数列的挑选,numpy中的random函数用来生成a*b维的随机矩阵,可区别使用;
(2)一般使用以下两种方法保留小数位数:
法一:print('%.2f' % number)
法二:print((format(number,'.2f')))