如何在python中实现随机选择


Posted in Python onNovember 02, 2019

这篇文章主要介绍了如何在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程序中的运用
Mar 02 Python
Python3 socket同步通信简单示例
Jun 07 Python
通过Python实现自动填写调查问卷
Sep 06 Python
浅谈numpy库的常用基本操作方法
Jan 09 Python
Python基于Tkinter模块实现的弹球小游戏
Dec 27 Python
python抓取搜狗微信公众号文章
Apr 01 Python
对django 模型 unique together的示例讲解
Aug 06 Python
使用Python实现将多表分批次从数据库导出到Excel
May 15 Python
利用python对mysql表做全局模糊搜索并分页实例
Jul 12 Python
python Cartopy的基础使用详解
Nov 01 Python
Python趣味挑战之教你用pygame画进度条
May 31 Python
Python自动化测试PO模型封装过程详解
Jun 22 Python
图解python全局变量与局部变量相关知识
Nov 02 #Python
Python如何实现动态数组
Nov 02 #Python
python基于gevent实现并发下载器代码实例
Nov 01 #Python
python进程间通信Queue工作过程详解
Nov 01 #Python
通过实例了解python property属性
Nov 01 #Python
python装饰器练习题及答案
Nov 01 #Python
Django框架HttpRequest对象用法实例分析
Nov 01 #Python
You might like
PHP中使用sleep函数实现定时任务实例分享
2014/08/21 PHP
PHP几个实用自定义函数小结
2016/01/25 PHP
laravel学习教程之存取器
2016/07/30 PHP
php使用Jpgraph创建折线图效果示例
2017/02/15 PHP
Google Map Api和GOOGLE Search Api整合实现代码
2009/07/18 Javascript
node.js中Socket.IO的进阶使用技巧
2014/11/04 Javascript
NodeJS制作爬虫全过程
2014/12/22 NodeJs
js控制div弹出层实现方法
2015/05/11 Javascript
javascript模拟评分控件实现方法
2015/05/13 Javascript
深入理解React中es6创建组件this的方法
2016/08/29 Javascript
JS获取鼠标相对位置的方法
2016/09/20 Javascript
Bootstrap实现提示框和弹出框效果
2017/01/11 Javascript
基于node.js实现爬虫的讲解
2019/02/18 Javascript
vue中使用element组件时事件想要传递其他参数的问题
2019/09/18 Javascript
Electron实现应用打包、自动升级过程解析
2020/07/07 Javascript
vue 子组件修改data或调用操作
2020/08/07 Javascript
[07:26]2015国际邀请赛第二日TOP10集锦
2015/08/06 DOTA
图文详解python安装Scrapy框架步骤
2019/05/20 Python
Python字典添加,删除,查询等相关操作方法详解
2020/02/07 Python
Python写出新冠状病毒确诊人数地图的方法
2020/02/12 Python
浅析python标准库中的glob
2020/03/13 Python
Matplotlib中%matplotlib inline如何使用
2020/07/28 Python
详解python metaclass(元类)
2020/08/13 Python
PyTorch 中的傅里叶卷积实现示例
2020/12/11 Python
优秀少先队大队辅导员事迹材料
2014/05/04 职场文书
大学班级文化建设方案
2014/05/06 职场文书
反邪教警示教育方案
2014/05/13 职场文书
煤矿安全承诺书
2014/05/22 职场文书
诚信考试标语
2014/06/24 职场文书
小学优秀教师材料
2014/12/15 职场文书
2015年学校财务工作总结
2015/05/19 职场文书
我在伊朗长大观后感
2015/06/16 职场文书
2015年教师党员个人总结
2015/11/24 职场文书
广播稿:校园广播稿范文
2019/04/17 职场文书
详解gantt甘特图可拖拽、编辑(vue、react都可用 highcharts)
2021/11/27 Vue.js