在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文件比较示例分享
Jan 10 Python
调试Python程序代码的几种方法总结
Apr 28 Python
python将ansible配置转为json格式实例代码
May 15 Python
Python生成密码库功能示例
May 23 Python
Python模块结构与布局操作方法实例分析
Jul 24 Python
Python数据结构与算法之二叉树结构定义与遍历方法详解
Dec 12 Python
浅谈numpy数组中冒号和负号的含义
Apr 18 Python
python 随机打乱 图片和对应的标签方法
Dec 14 Python
python tkinter图形界面代码统计工具(更新)
Sep 18 Python
python flask搭建web应用教程
Nov 19 Python
pandas 操作 Excel操作总结
Mar 31 Python
PyQt5爬取12306车票信息程序的实现
May 14 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使用Imagick生成图片的方法
2015/07/31 PHP
PHP面向对象程序设计重载(overloading)操作详解
2019/06/13 PHP
浅谈jquery事件处理
2015/04/24 Javascript
基于Jquery制作图片文字排版预览效果附源码下载
2015/11/18 Javascript
node.js从数据库获取数据
2016/05/08 Javascript
JavaScript实现简单图片轮播效果
2017/08/21 Javascript
vue和webpack安装命令详解
2018/06/15 Javascript
JS实现快递单打印功能【推荐】
2018/06/21 Javascript
详解Vue源码学习之callHook钩子函数
2018/07/25 Javascript
微信小程序webview实现长按点击识别二维码功能示例
2019/01/24 Javascript
postman自定义函数实现 时间函数的思路详解
2019/04/17 Javascript
小程序api实现promise封装过程解析
2019/11/21 Javascript
jquery将信息遍历到界面上实例代码
2020/01/21 jQuery
使用typescript改造koa开发框架的实现
2020/02/04 Javascript
Vue使用富文本编辑器Vue-Quill-Editor(含图片自定义上传服务、清除复制粘贴样式等)
2020/05/15 Javascript
JavaScript事件循环及宏任务微任务原理解析
2020/09/02 Javascript
python使用装饰器和线程限制函数执行时间的方法
2015/04/18 Python
python回调函数用法实例分析
2015/05/09 Python
Python提取网页中超链接的方法
2016/09/18 Python
python向已存在的excel中新增表,不覆盖原数据的实例
2018/05/02 Python
numpy添加新的维度:newaxis的方法
2018/08/02 Python
详解如何管理多个Python版本和虚拟环境
2019/05/10 Python
用python实现学生管理系统
2020/07/24 Python
python 用pandas实现数据透视表功能
2020/12/21 Python
python Protobuf定义消息类型知识点讲解
2021/03/02 Python
小米乌克兰网上商店:Xiaomi.UA
2019/10/29 全球购物
劳资人员岗位职责
2013/12/19 职场文书
毕业生的自我评价
2013/12/30 职场文书
建筑结构施工专业推荐信
2014/02/21 职场文书
怎么写好自荐书
2014/03/02 职场文书
邀请书模板
2015/02/02 职场文书
培训简讯范文
2015/07/20 职场文书
浅谈Redis中的RDB快照
2021/06/29 Redis
MySQL图形化管理工具Navicat安装步骤
2021/12/04 MySQL
python前后端自定义分页器
2022/04/13 Python
python缺失值填充方法示例代码
2022/12/24 Python