【python】随机数的生成

本文介绍如何使用Python的random库及numpy库生成各种类型的随机数,包括整数、浮点数等,并提供实际项目的应用示例。

废话不多说,直接看下面的实例:

1、使用python自带的random库

import random

# 功能:在[n,m]范围内,随机生成一个数x, n、m、x都为int类型
random.randint(1,10) # 取值范围:1,2,3,4,5,6,7,8,9,10

# 功能:在[n,m)范围内,以间隔2随机生成一个数x,n、m、x都为int类型
random.randrange(1,5,2) # 取值范围:1,3 注:5取不到

# 功能:在列表a中随机选择一个数
a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
random.choice(a) # 取值为a中的一个数

# 功能:随机产生(0,1)范围内的随机浮点数
random.random() # 0.4833313492573843

在实际项目中遇到:
随机生成n个整数(会有相同的数出现):

# 0和10都可以取到
L=[random.randint(0,10) for _ in range(10) ]
print(L)
[8, 6, 0, 6, 5, 8, 0, 6, 1, 7]

随机生成n个整数(都不相同):

#表示从[A,B]间随机生成N个数,结果以列表返回
# random.sample(range(A,B),N) # 取不到B
random.sample(range(1,3),2) # [1, 2] or [2, 1], 取不到3

2、使用numpy库

import numpy as np

# 功能:产生n个(0,1)之间的随机数
print(np.random.random(3)) # [0.99035173 0.80061145 0.08754273]

# 功能:从序列中随机选择数据
print(np.random.choice([2,5,7,8,9,11,3])) # 9

# 功能:产生[n,m)之间的k个整数
print(np.random.randint(1,3,6)) # [2 2 2 1 1 1]

# 把序列中的数据打乱
# np.random.shuffle(item) 不会参数返回值,改变的话是在原列表中修改的
item = [2,5,7,8,9,11,3]
np.random.shuffle(item)
print(item) # [11, 3, 9, 8, 7, 5, 2]

以上只是random和numpy库的部分功能,还有部分未列出。

写这篇博客的主要目的是记录自己在实际项目中遇到需要随机生成一个整数、随机生成n个不同的整数

参考

https://blog.csdn.net/zq476668643/article/details/95219453
https://blog.csdn.net/u012063507/article/details/79270594
https://blog.csdn.net/u010882121/article/details/108610121

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

机器不学习我学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值