【python编程】-python生成随机数

python中生成随机数主要使用random模块numpy库中的random函数

前者主要用于生成随机数实现序列中随机数和随机数列的挑选,后者用来生成a*b维的随机矩阵

一、random模块

random模块中将近有7个函数都是可以用来生成随机数,列举如下:

1. random.random()

功能:随机生成一个[0, 1)的浮点数

示例:

import random
number = random.random()
print(number)
print('%.2f' % number)

输出:
0.2527991999717836
0.25

2. random.uniform(a, b)

功能:随机生成一个[a, b)的浮点数

3. random.randint(a, b)

功能:随机生成一个[a, b)的整数

4. random.randrange(a, b, step)

功能:在随机生成的以<以a为始,每step递增,以b为终>这样的一个整数序列中随机选择一个数

5. random.choice(sequence)

功能:从一个已有的sequence中随机选择一个元素

6. random.sample(sequence,k)

功能:从某一序列中获取指定长度的片段(随机选取K个,没有顺序)

import random
sequence=['apple','banana','orange']
l=random.sample(sequence,2)
print(l)

输出:
['orange', 'banana']

7. random.shuffle(列表)

功能:打乱一个列表的元素顺序打乱的是列表本身,无返回值

import random
sequence=['apple','banana','orange']
random.shuffle(sequence)
print(sequence)

输出:
['orange', 'banana', 'apple']

二、numpy中的random函数

1. np.random.randn(a, b)

功能:生成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]]

2. random.randint(low,high,size)

功能:生成一个<以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')))

你可能感兴趣的:(python编程练习,python)