如何在python中实现随机选择

yipeiwu_com6年前Python基础

这篇文章主要介绍了如何在python中实现随机选择,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

想从一个序列中随机抽取若干元素,或者想生成几个随机数。

random 模块有大量的函数用来产生随机数和随机选择元素。比如,要想从一个序列中随机的抽取一个元素,可以使用random.choice() :

>>> import random
>>> values = [1, 2, 3, 4, 5, 6]
>>> random.choice(values)
2
>>> random.choice(values)
3
>>> random.choice(values)
1
>>>

为了提取出N 个不同元素的样本用来做进一步的操作,可以使用random.sample()

>>> random.sample(values, 2)
[6, 2]
>>> random.sample(values, 2)
[4, 3]
>>> random.sample(values, 3)
[4, 3, 1]

如果你仅仅只是想打乱序列中元素的顺序,可以使用random.shuffle() :

>>> random.shuffle(values)
>>> values
[2, 4, 6, 5, 3, 1]
>>> random.shuffle(values)
>>> values
[3, 5, 2, 1, 6, 4]
>>>

生成随机整数,请使用random.randint() :

>>> random.randint(0,10)
2
>>> random.randint(0,10)
5

为了生成0 到1 范围内均匀分布的浮点数,使用random.random() :

>>> random.random()
0.9406677561675867
>>> random.random()
0.133129581343897

如果要获取N 位随机位(二进制) 的整数,使用random.getrandbits() :

>>> random.getrandbits(200)
335837000776573622800628485064121869519521710558559406913275

了解上述介绍的功能,random 模块还包含基于均匀分布、高斯分布和其他分布的随机数生成函数。比如, random.uniform() 计算均匀分布随机数, random.gauss()计算正态分布随机数。对于其他的分布情况请参考在线文档。

在random 模块中的函数不应该用在和密码学相关的程序中。如果你确实需要类似的功能,可以使用ssl 模块中相应的函数。比如, ssl.RAND bytes() 可以用来生成一个安全的随机字节序列。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python实现遍历目录的方法【测试可用】

Python实现遍历目录的方法【测试可用】

本文实例讲述了Python实现遍历目录的方法。分享给大家供大家参考,具体如下: # *-* coding=gb2312 *-* import os.path import shuti...

剖析Django中模版标签的解析与参数传递

分析直至另一个模板标签 模板标签可以像包含其它标签的块一样工作(想想 {% if %} 、 {% for %} 等)。 要创建一个这样的模板标签,在你的编译函数中使用 parser.pa...

Mac安装python3的方法步骤

Mac安装python3的方法步骤

Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的。 现在 Mac 上默认安装的 python 版本为 2.7 版本,若 安装 新版本需要 通过 该地址进行下载...

python opencv实现信用卡的数字识别

python opencv实现信用卡的数字识别

本项目利用python以及opencv实现信用卡的数字识别 前期准备 导入工具包 定义功能函数 模板图像处理 读取模板图像 cv2.imread(img) 灰度...

TensorFlow实现MLP多层感知机模型

一、多层感知机简介 Softmax回归可以算是多分类问题logistic回归,它和神经网络的最大区别是没有隐含层。理论上只要隐含节点足够多,即时只有一个隐含层的神经网络也可以拟合任意函数...