python list等分并从等分的子集中随机选取一个数


Posted in Python onNovember 16, 2020

有些时候我们需要从视频序列中均匀的随机采样,我们可以每隔x步进行一次采样,这就要求对一个list每隔x步进行一次截取,再从截取到的不同的子集中随机选取一个数就是我们平均采样的帧的idx。

import random

def split(a, n):
  k, m = divmod(len(a), n)
  return [a[i * k + min(i, m):(i + 1) * k + min(i + 1, m)] for i in list(range(n))]

list_split = split(list(range(15)), 3)
print(list_split)
tmp = [random.choice(i) for i in list_split]
print(tmp)

结果:

list_split====>
[[0, 1, 2, 3, 4], [5, 6, 7, 8, 9], [10, 11, 12, 13, 14]]

tmp====>
[0, 6, 12]

 python list 平均 分割 等分

应用场景:根据线程数,分割任务列表;

####功能:将list对象N等分
def div_list(ls,n):
 if not isinstance(ls,list) or not isinstance(n,int):
 return []
 ls_len = len(ls)
 if n<=0 or 0==ls_len:
 return []
 if n > ls_len:
 return []
 elif n == ls_len:
 return [[i] for i in ls]
 else:
 j = ls_len/n
 k = ls_len%n
 ### j,j,j,...(前面有n-1个j),j+k
 #步长j,次数n-1
 ls_return = []
 for i in xrange(0,(n-1)*j,j):
  ls_return.append(ls[i:i+j])
 #算上末尾的j+k
 ls_return.append(ls[(n-1)*j:])
 return ls_return

if 0:
 print div_list(3,3)
 print div_list([3],'3')
 print div_list([3],-1)
 print div_list([],2)
 print div_list([3],2)
 print div_list([3,4,5,6],4)
 print div_list([3,4,5,6,7,8,9,10,11,12,13,14,15],3)

到此这篇关于python list等分并从等分的子集中随机选取一个数的文章就介绍到这了,更多相关python list等分内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
使用PYTHON创建XML文档
Mar 01 Python
Django中实现一个高性能计数器(Counter)实例
Jul 09 Python
Python的Flask站点中集成xhEditor文本编辑器的教程
Jun 13 Python
情人节快乐! python绘制漂亮玫瑰
Aug 18 Python
python判断文件夹内是否存在指定后缀文件的实例
Jun 10 Python
python实现windows倒计时锁屏功能
Jul 30 Python
深入学习python多线程与GIL
Aug 26 Python
flask利用flask-wtf验证上传的文件的方法
Jan 17 Python
Python必须了解的35个关键词
Jul 16 Python
Python3安装模块报错Microsoft Visual C++ 14.0 is required的解决方法
Jul 28 Python
浅析关于Keras的安装(pycharm)和初步理解
Oct 23 Python
pandas中DataFrame检测重复值的实现
May 26 Python
Python大批量搜索引擎图像爬虫工具详解
Nov 16 #Python
详解Python中list[::-1]的几种用法
Nov 16 #Python
使用Pytorch搭建模型的步骤
Nov 16 #Python
Python图像读写方法对比
Nov 16 #Python
python3中编码获取网页的实例方法
Nov 16 #Python
Python3中小括号()、中括号[]、花括号{}的区别详解
Nov 15 #Python
Python根据URL地址下载文件并保存至对应目录的实现
Nov 15 #Python
You might like
PHP缩略图等比例无损压缩,可填充空白区域补充色
2011/06/10 PHP
thinkphp3.0 模板中函数的使用
2012/11/13 PHP
php检查函数必传参数是否存在的实例详解
2017/08/28 PHP
php伪静态验证码不显示的解决方案
2019/09/26 PHP
php swoft框架实例用法
2020/12/22 PHP
基于JQuery框架的AJAX实例代码
2009/11/03 Javascript
JavaScript单元测试ABC
2012/04/12 Javascript
判断多个input type=file是否有已经选择好文件的代码
2012/05/23 Javascript
javascript中call和apply方法浅谈
2013/09/27 Javascript
jquery 获取 outerHtml 包含当前节点本身的代码
2014/10/30 Javascript
jQuery实现弹出窗口中切换登录与注册表单
2015/06/05 Javascript
JavaScript 性能优化小结
2015/10/12 Javascript
js仿百度登录页实现拖动窗口效果
2016/03/11 Javascript
如何解决IONIC页面底部被遮住无法向上滚动问题
2016/09/06 Javascript
js中的eval()函数把含有转义字符的字符串转换成Object对象的方法
2016/12/02 Javascript
node-sass安装失败的原因与解决方法
2017/09/04 Javascript
JS+CSS实现网页加载中的动画效果
2017/10/27 Javascript
小程序组件之仿微信通讯录的实现代码
2018/09/12 Javascript
详解微信小程序支付流程与梳理
2019/07/16 Javascript
深入浅出vue图片路径的实现
2019/09/04 Javascript
Linux下编译安装MySQL-Python教程
2015/02/02 Python
Python实现建立SSH连接的方法
2015/06/03 Python
Python中的urllib模块使用详解
2015/07/07 Python
python Selenium爬取内容并存储至MySQL数据库的实现代码
2017/03/16 Python
python 二分查找和快速排序实例详解
2017/10/13 Python
分析python动态规划的递归、非递归实现
2018/03/04 Python
Pandas之drop_duplicates:去除重复项方法
2018/04/18 Python
10个Python小技巧你值得拥有
2018/09/29 Python
Django中reverse反转并且传递参数的方法
2019/08/06 Python
VSCode 自定义html5模板的实现
2019/12/05 HTML / CSS
美国咖啡批发网站:Coffee.org
2017/06/29 全球购物
音乐教学反思
2014/02/02 职场文书
淘宝客服专员岗位职责
2014/04/11 职场文书
敬老模范事迹
2014/05/21 职场文书
2014年最新版离婚协议书范本
2014/11/25 职场文书
预备党员的思想汇报,你真的会写吗?
2019/06/28 职场文书