在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函数学习笔记
Oct 07 Python
python原始套接字编程示例分享
Feb 21 Python
跟老齐学Python之大话题小函数(1)
Oct 10 Python
python求质数的3种方法
Sep 28 Python
详解用python写一个抽奖程序
May 10 Python
PyCharm+Qt Designer+PyUIC安装配置教程详解
Jun 13 Python
解决django 新增加用户信息出现错误的问题
Jul 28 Python
pygame实现非图片按钮效果
Oct 29 Python
Python3.7 基于 pycryptodome 的AES加密解密、RSA加密解密、加签验签
Dec 04 Python
Python+OpenCV 实现图片无损旋转90°且无黑边
Dec 12 Python
PyCharm下载和安装详细步骤
Dec 17 Python
python 实现保存最新的三份文件,其余的都删掉
Dec 22 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关联链接常用代码
2012/11/05 PHP
php中smarty实现多模版网站的方法
2015/06/11 PHP
PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
2017/09/17 PHP
Gambit vs ForZe BO3 第二场 2.13
2021/03/10 DOTA
JavaScript 对象成员的可见性说明
2009/10/16 Javascript
jquery触发a标签跳转事件示例代码
2013/07/21 Javascript
jQuery实现文件上传进度条特效
2015/08/12 Javascript
浅析函数声明和函数表达式——函数声明的声明提前
2016/05/03 Javascript
利用JS做网页特效_大图轮播(实例讲解)
2017/08/09 Javascript
Vue开发实现吸顶效果的示例代码
2018/08/21 Javascript
使用vue实现各类弹出框组件
2019/07/03 Javascript
Vue的Options用法说明
2020/08/14 Javascript
vue实践---根据不同环境,自动转换请求的url地址操作
2020/09/21 Javascript
[53:13]DOTA2-DPC中国联赛 正赛 DLG vs PHOENIX BO3 第三场 1月18日
2021/03/11 DOTA
python调用cmd复制文件代码分享
2013/12/27 Python
python动态监控日志内容的示例
2014/02/16 Python
python入门之语句(if语句、while语句、for语句)
2015/01/19 Python
python实现简单ftp客户端的方法
2015/06/28 Python
在Django框架中编写Context处理器的方法
2015/07/20 Python
各种Python库安装包下载地址与安装过程详细介绍(Windows版)
2016/11/02 Python
Python中生成Epoch的方法
2017/04/26 Python
Python+树莓派+YOLO打造一款人工智能照相机
2018/01/02 Python
python实现控制台打印的方法
2019/01/12 Python
浅谈python3打包与拆包在函数的应用详解
2020/05/02 Python
python录音并调用百度语音识别接口的示例
2020/12/01 Python
MSC邮轮官方网站:加勒比海、地中海和世界各地的假期
2018/08/27 全球购物
Engel & Bengel官网:婴儿推车、儿童房家具和婴儿设备
2019/12/28 全球购物
大学生写自荐信的技巧
2014/01/08 职场文书
社区道德讲堂实施方案
2014/03/21 职场文书
文秘个人求职信范文
2014/04/22 职场文书
法定代表人授权委托书范文
2014/08/02 职场文书
领导干部个人整改措施落实情况汇报
2014/10/29 职场文书
12.4全国法制宣传日活动总结
2014/11/01 职场文书
幼儿园庆六一主持词
2015/06/30 职场文书
四年级作文之植物
2019/09/20 职场文书
python3使用diagrams绘制架构图的步骤
2021/04/08 Python