0
点赞
收藏
分享

微信扫一扫

Python入门系列18-random标准库

一、介绍

random模块实现了各种分布的伪随机数的生成器。

导入语法:

import random

二、常用函数

常用的函数如下图所示:

函数

说明

random.seed(a)

设置初始化随机种子,可输出相同随机数序列,a取整数或浮点数,不设置时默认以系统时间为种子

random.random()

用于生成一个0.0到1.0的随机浮点数

random.uniform(a,b)

生成一个[a,b]之间的随机小数,a/b取整数或浮点数

random.randint(a,b)

生成一个[a,b]之间的随机整数

random.randrange(start,stop,[step])

生成一个[start,stop)之间以step为步数的随机整数,step不设置默认为1

random.getrandbits(k)

生成一个占内存k位以内的随机整数,k取长度的整数值

random.choice(seq)

从序列类型seq中随机返回一个元素

random.shuffle(seq)

将序列类型中的元素随机排序

random.sample(pop,k)

从pop中选取k个元素,以列表类型返回

三、实例

1、random.seed(a)

import random

print('没有设定种子')

for i in range(5):
    data = random.randint(1, 10)
    print(data, end=' ')
print()

print('设定种子')
random.seed(1)
for i in range(5):
    data = random.randint(1, 10)
    print(data, end=' ')
print()

输出:

10 3 6 9 8 
设定种子
3 10 2 5 2

没有设定种子
6 7 2 9 4 
设定种子
3 10 2 5 2

从输出结果我们可以看出:没有显式设置种子时,每次输出的随机数都是不一样的;显式设置种子时,每次输出的随机数都是一样的。

3、random.random()

import random

print(random.random())

输出:

0.34784252370278534

3、random.uniform(a,b)

import random

# 生成一个5.0到10.0之间的随机小数
print(random.uniform(5.0, 10.0))

输出:

5.102225103831665

4、random.randint(a,b)

import random

# 生成一个5到10之间的随机整数
print(random.randint(5, 10))

输出:

10

5、random.randrange(start,stop,[step])

import random

# 生成一个1到49之间以步数为1的随机整数
print(random.randrange(1, 50))

输出:

4

6、random.choice(seq)

import random

# 从列表中返回随机元素
print(random.choice([1, 2, 3, 4, 5, 6]))

输出:

5

7、random.shuffle(seq)

import random

# 将序列类型随机排序
list = [1, 2, 3, 4, 5]
random.shuffle(list)

print(list)

random.shuffle(list)
print(list)

输出:

[3, 1, 2, 4, 5]
[1, 4, 3, 5, 2]

8、random.sample(pop,k)

import random

# 从列表中选择3个元素
list = [1, 2, 3, 4, 5]
print(random.sample(list, 3))

print(random.sample(list, 3))

输出:

[4, 1, 3]
[3, 4, 1]

举报

相关推荐

0 条评论