脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - Python实现随机选择元素功能

Python实现随机选择元素功能

2020-12-08 00:27Lockeyi Python

这篇文章主要为大家详细介绍了Python实现随机选择元素功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

如果要从序列中随机挑选元素,我们可以使用random模块的random.choice()方法:

Python实现随机选择元素功能

如果想要取出N个元素,将选出的元素一处以做进一步的考察,可以使用random.sample()方法:

Python实现随机选择元素功能

如果我们只是想要打乱序列的顺序(洗牌),可以使用random.shuffle():

Python实现随机选择元素功能

要产生随机数,可以使用random.randint()方法:

Python实现随机选择元素功能

如果要产生0-1之间均匀分布的浮点数值,可以使用random.random()方法:

Python实现随机选择元素功能

如果要得到N各随机比特位所表示的整数,可以使用random.getrandbits()方法:

Python实现随机选择元素功能

请注意:

random模块使用 马特赛特旋转演算法(Mersenne Twister,也称作梅森旋转算法)来计算随机数,这是一个确定性算法,但是可以通多random.seed()函数来修改出事的种子值

?
1
2
3
4
5
6
random.seed()
#基于系统时间或者是os.urandom()函数
random.seed(6666)
#基于给定整数
random.seed(b'bytes')
#基于给定的字节数据

random模块除了随机数的应用之外还可以用来计算均匀分布、高斯分布和其他概率分布

?
1
2
3
4
random.uniform
#计算均匀分布
random.gauss()
#计算高斯分布(正态分布)

注意:请不要将random模块用在和加密相关的程序中,如果有这样的应用需求,请考虑使用ssl模块中的函数来进行替代,例如:

?
1
2
ssl.RAND_bytes()
#用来生成加密安全的随机字节序列

Python实现随机选择元素功能

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:http://blog.csdn.net/lockey23/article/details/77435890

延伸 · 阅读

精彩推荐