如何在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中基于生成器的状态机
Apr 13 Python
Python语言描述KNN算法与Kd树
Dec 13 Python
Python微信公众号开发平台
Jan 25 Python
Python实现求一个集合所有子集的示例
May 04 Python
python+webdriver自动化环境搭建步骤详解
Jun 03 Python
Python使用python-docx读写word文档
Aug 26 Python
基于MSELoss()与CrossEntropyLoss()的区别详解
Jan 02 Python
使用sklearn的cross_val_score进行交叉验证实例
Feb 28 Python
python实现简单俄罗斯方块
Mar 13 Python
python中的socket实现ftp客户端和服务器收发文件及md5加密文件
Apr 01 Python
Selenium向iframe富文本框输入内容过程图解
Apr 10 Python
python 发送get请求接口详解
Nov 17 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
第五节--克隆
2006/11/16 PHP
PHP多进程编程实例
2014/10/15 PHP
php更新mysql后获取改变行数的方法
2014/12/25 PHP
nginx+thinkphp下解决不支持pathinfo模式
2015/07/01 PHP
PHP连接MySQL数据库并以json格式输出
2018/05/21 PHP
Laravel 验证码认证学习记录小结
2019/12/20 PHP
node.js中的fs.unlink方法使用说明
2014/12/15 Javascript
jQuery元素选择器用法实例
2014/12/23 Javascript
基于Bootstrap的Metronic框架实现条码和二维码的生成及打印处理操作
2016/08/29 Javascript
jQuery实现根据生日计算年龄 星座 生肖
2016/11/23 Javascript
详解angular2实现ng2-router 路由和嵌套路由
2017/03/24 Javascript
微信小程序导航栏滑动定位功能示例(实现CSS3的positionsticky效果)
2019/01/24 Javascript
vue踩坑记录之数组定义和赋值问题
2019/03/20 Javascript
jQuery中使用validate插件校验表单功能
2019/05/24 jQuery
keep-Alive搭配vue-router实现缓存页面效果的示例代码
2020/06/24 Javascript
Kettle中使用JavaScrip调用jar包对文件内容进行MD5加密的操作方法
2020/09/04 Javascript
[01:09:01]完美世界DOTA2联赛循环赛 Magma vs PXG BO2第一场 10.28
2020/10/28 DOTA
简明 Python 基础学习教程
2007/02/08 Python
Python 正则表达式实现计算器功能
2017/04/29 Python
利用python将json数据转换为csv格式的方法
2018/03/22 Python
python统计字母、空格、数字等字符个数的实例
2018/06/29 Python
使用pandas实现csv/excel sheet互相转换的方法
2018/12/10 Python
python3调用windows dos命令的例子
2019/08/14 Python
Django中使用MySQL5.5的教程
2019/12/18 Python
基于python3的socket聊天编程
2020/02/17 Python
Python爬虫scrapy框架Cookie池(微博Cookie池)的使用
2021/01/13 Python
彪马加拿大官网:PUMA加拿大
2018/10/04 全球购物
英国露营设备和户外服装购物网站:Simply Hike
2019/05/05 全球购物
加拿大领先的时尚和体育零售商:Sporting Life
2019/12/15 全球购物
C#笔试题集合
2013/06/21 面试题
教育实习生的自我评价分享
2013/11/21 职场文书
运动会广播稿500字
2014/01/28 职场文书
晚归检讨书
2014/02/19 职场文书
运动会表扬稿
2015/01/16 职场文书
Java多条件判断场景中规则执行器的设计
2021/06/26 Java/Android
mysql查询结果实现多列拼接查询
2022/04/03 MySQL