在python带权重的列表中随机取值的方法


Posted in Python onJanuary 23, 2019

1 random.choice

python random模块的choice方法随机选择某个元素

foo = ['a', 'b', 'c', 'd', 'e']
from random import choice
print choice(foo)

2 random.sample

使用python random模块的sample函数从列表中随机选择一组元素

list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 
slice = random.sample(list, 5) #从list中随机获取5个元素,作为一个片断返回 
print slice 
print list #原有序列并没有改变。

3 python带权重的随机取值

import random
def random_weight(weight_data):
  total = sum(weight_data.values())  # 权重求和
  ra = random.uniform(0, total)  # 在0与权重和之前获取一个随机数 
  curr_sum = 0
  ret = None
  keys = weight_data.iterkeys()  # 使用Python2.x中的iterkeys
#   keys = weight_data.keys()    # 使用Python3.x中的keys
  for k in keys:
    curr_sum += weight_data[k]       # 在遍历中,累加当前权重值
    if ra <= curr_sum:     # 当随机数<=当前权重和时,返回权重key
      ret = k
      break
  return ret
weight_data = {'a': 10, 'b': 15, 'c': 50}
random_weight(weight_data)

以上这篇在python带权重的列表中随机取值的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
用Python代码来解图片迷宫的方法整理
Apr 02 Python
python实现的守护进程(Daemon)用法实例
Jun 02 Python
在Python程序中操作MySQL的基本方法
Jul 29 Python
Python的Flask框架中集成CKeditor富文本编辑器的教程
Jun 13 Python
通过5个知识点轻松搞定Python的作用域
Sep 09 Python
2018年Python值得关注的开源库、工具和开发者(总结篇)
Jan 04 Python
Python3.5运算符操作实例详解
Apr 25 Python
python print出共轭复数的方法详解
Jun 25 Python
Pycharm连接远程服务器并实现远程调试的实现
Aug 02 Python
python 抓取知乎指定回答下视频的方法
Jul 09 Python
接口自动化多层嵌套json数据处理代码实例
Nov 20 Python
python 如何上传包到pypi
Dec 24 Python
Appium+Python自动化测试之运行App程序示例
Jan 23 #Python
Python+OpenCV图片局部区域像素值处理详解
Jan 23 #Python
Python实现查找数组中任意第k大的数字算法示例
Jan 23 #Python
Appium Python自动化测试之环境搭建的步骤
Jan 23 #Python
python读取图片任意范围区域
Jan 23 #Python
Python基于plotly模块实现的画图操作示例
Jan 23 #Python
python实现剪切功能
Jan 23 #Python
You might like
支持中文的php加密解密类代码
2011/11/27 PHP
php计算两个日期时间差(返回年、月、日)
2014/06/19 PHP
支付宝支付开发――当面付条码支付和扫码支付实例
2016/11/04 PHP
在Laravel5中正确设置文件权限的方法
2019/05/22 PHP
文字溢出实现溢出的部分再放入一个新生成的div中具体代码
2013/05/17 Javascript
图片翻转效果具体实现代码
2014/01/09 Javascript
判断在css加载完毕后执行后续代码示例
2014/09/03 Javascript
node.js中RPC(远程过程调用)的实现原理介绍
2014/12/05 Javascript
JavaScript登录验证码的实现
2016/10/27 Javascript
bootstrap响应式表格实例详解
2017/05/15 Javascript
vue音乐播放器插件vue-aplayer的配置及其使用实例详解
2017/07/10 Javascript
js原生代码实现轮播图的实例讲解
2017/07/28 Javascript
Angular2 父子组件通信方式的示例
2018/01/29 Javascript
详解JavaScript函数callee、call、apply的区别
2019/03/08 Javascript
jQuery实现动态添加和删除input框实例代码
2019/03/26 jQuery
JavaScript迭代器的含义及用法
2019/06/21 Javascript
layui添加动态菜单与选项卡
2019/07/26 Javascript
python try except 捕获所有异常的实例
2018/10/18 Python
python实现抽奖小程序
2020/04/15 Python
Python3 执行系统命令并获取实时回显功能
2019/07/09 Python
Django中使用CORS实现跨域请求过程解析
2019/08/05 Python
tensorflow 获取所有variable或tensor的name示例
2020/01/04 Python
Python注释、分支结构、循环结构、伪“选择结构”用法实例分析
2020/01/09 Python
关于win10在tensorflow的安装及在pycharm中运行步骤详解
2020/03/16 Python
Python稀疏矩阵及参数保存代码实现
2020/04/18 Python
浅谈Keras中shuffle和validation_split的顺序
2020/06/19 Python
白兰氏健康Mall:BRAND’S
2017/11/13 全球购物
金讯Java笔试题目
2013/06/18 面试题
上课迟到检讨书
2014/01/19 职场文书
幼儿园安全责任书
2014/04/14 职场文书
学校食堂食品安全责任书
2014/07/28 职场文书
2015年度房地产工作总结
2015/04/09 职场文书
买卖合同纠纷代理词
2015/05/25 职场文书
只需要100行Python代码就可以实现的贪吃蛇小游戏
2021/05/27 Python
使用redis实现延迟通知功能(Redis过期键通知)
2021/09/04 Redis
openGauss数据库JDBC环境连接配置的详细过程(Eclipse)
2022/06/01 Java/Android