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

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

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐