列表分成N等份
将一个长列表分为N个短列表
def Equal_division_list(eq_list, n):
'''
:param seq:传入的列表
:param n:划分的份数,几等分
:return:返回一个嵌套列表
'''
num_list = []
if n > len(eq_list):
print('份数大于列表长度,请重新输入')
elif n == 1:
num_list = eq_list
elif n == len(eq_list):
for i in eq_list:
num_list.append(i)
elif len(eq_list) % n == 0:
index = 0
for i in range(n):
num_list.append(eq_list[index:index + int(len(eq_list) / n)])
index += int(len(eq_list) / n)
else:
index = 0
for i in range(n):
num_list.append(eq_list[index:index + int(len(eq_list) / n)])
index += int(len(eq_list) / n)
for j in range(len(eq_list) % n):
num_list[-(j + 1)].append(eq_list[-(j + 1)])
return num_list 运行
if __name__ == '__main__':
print(Equal_division_list([i for i in range(5)], 4)) [[0], [1], [2], [3, 4]]
------------------------------------------------------------
if __name__ == '__main__':
print(Equal_division_list([i for i in range(15)], 4)) [[0, 1, 2], [3, 4, 5, 12], [6, 7, 8, 13], [9, 10, 11, 14]]
列表分成N等份的更多相关文章
- HTML列表的常用属性及其应用
首先列表分成有序和无序分别是<ol><ul>,无序的比较简单,看个例子: <html> <body> <h4>一个无序列表:</h4& ...
- 面试题-一个列表向右移动k位
def sort(lst,k): length = len(lst) left =lst[:-k] right =lst[-k:] lst.clear() lst.extend(right) lst. ...
- 2015/9/1 Python基础(6):列表
列表和字符串类型很相似,是同样的序列式数据类型.但是字符串只能由字符组成,列表可以保留任意数目的Python对象的灵活的容器.Python的列表比C的数组要灵活,数组里面只能是一种类型,列表可以有多种 ...
- python-将一个列表切分成多个小列表
list是python中较为常见的数据类型,它是一个可迭代对象,迭代是什么?简单的可以理解成:一个可以被for循环遍历的对象 今天拿到一个类似这样的list list_info = ['name zh ...
- angularcli 第六篇(todolist 列表)
1.通过文本框输入,向数组添加数据 <!-- 通过文本框输入,向数组添加数据 push --> <input type="text" name="111 ...
- bootstrap 栅格系统 自动隐藏
1 Container 顾名思义Container是栅格系统最外层的class,直接被container包裹的只能是row这个class.需要注意的是container自带左右各15px paddin ...
- bootstrap入门基础
1.字体 text-left text-center text-right text-lowercase 小写 text-uppercase 大写 text-capitalize 首字母大写 2.表格 ...
- 【IT笔试面试题整理】堆栈和队列
如何准备: Whether you are asked to implement a simple stack / queue, or you are asked to implementa modi ...
- bootstrap3
bs是基于html5和css3的, h5和css3是今后的趋势. html5只是说文档的 "标准"是h5, 但是文档的类型仍然是 html. 所以在写文档类型的时候, 就不能要那个 ...
随机推荐
- Java 空字符串和 字符串为null的区别
之前一直没有搞清楚 字符串为空和字符串为null的区别,今天写代码一直出现NullPointerException异常,我一直没有搞清楚,后来发现我是这样写的 String s = null; s = ...
- angular5引入sass
angular/cli支持使用sass新建工程:如果是新建一个angular工程采用sass:ng new My_New_Project --style=sass这样所有样式的地方都将采用sass样式 ...
- jQuery内容过滤选择器再探究(原创)
内容过滤选择器不算复杂,但还是有需要注意的地方
- window下eclipse搭建hadoop环境
1 生成插件jar 1.1 安装java,ant运行环境 1.2 下载hadoop-2.5.0.tar.gz并解压到指定目录 1.3 下载hadoop2x-eclipse-plugin-master. ...
- OI中的快速傅里叶变换(FFT)
快速傅里叶变换(FFT) ---- LLpp ...
- Android Studio javadoc 生成注释文档
相信大家刚开始写代码的时候就被前辈告知了要养成写注释的好习惯,今天我们来了解一下如何利用我们平时写的注释生成文档,一起来看看吧! 其实注释格式一般如下两种: /* *普通多行 *注释 */ / ...
- [转] datetime.now、datetime.utcnow以及Django中的timezone.now之间的区别
https://blog.csdn.net/sinat_41898105/article/details/80984298 在我们使用Django做项目时经常会遇到时间的存储与读取不一致的问题 ...
- Android开发 VideoView视频播放详解
前言 VideoView是Android主要的视频播放View,它其实是对MediaPlayer的再次封装.如果你已经了解过MediaPlayer在使用VideoView是十分简单的.如果你想先了解M ...
- hdu 5792 树状数组+离散化+思维
题目大意: Given a sequence A with length n,count how many quadruple (a,b,c,d) satisfies: a≠b≠c≠d,1≤a< ...
- rest framework 之前
在开始rest framework之前,我们先来了解一下什么是restful rest 是一种软件架构风格,Representational state Transfer 它从资源的角度去看整个网络, ...