list是python中较为常见的数据类型,它是一个可迭代对象,迭代是什么?简单的可以理解成:一个可以被for循环遍历的对象

今天拿到一个类似这样的list

list_info = ['name zhangsan','age 10','sex man','name lisi','age 11','sex women']

其实说白了就是两个人的个人信息,字段都一样,但是在一个共同的列表中,没办法区分,首先需要将这个大列表分成2个(这里人数是不一定的,分列表是按照每个列表固定的长度)的小列表

def list_of_groups(list_info, per_list_len):
'''
:param list_info: 列表
:param per_list_len: 每个小列表的长度
:return:
'''
list_of_group = zip(*(iter(list_info),) *per_list_len)
end_list = [list(i) for i in list_of_group] # i is a tuple
count = len(list_info) % per_list_len
end_list.append(list_info[-count:]) if count !=0 else end_list
return end_list if __name__ == '__main__':
list_info = ['name zhangsan', 'age 10', 'sex man', 'name lisi', 'age 11', 'sex women']
ret = list_of_groups(list_info,3)
print(ret)

以上便是这个函数执行的结果,成功将一个大的无规则的列表按照一定规则做了处理,还可以将上述小列表转换成字典,更加直观,通过键值对的方式获取数据

    list_dict = []
for item in ret:
data = {}
data['name'] = item[0].split(' ')[1]
data['age'] = item[1].split(' ')[1]
data['sex'] = item[2].split(' ')[1]
list_dict.append(data)
print(list_dict)

两种更加可视化的方法,任君选择吧

python-将一个列表切分成多个小列表的更多相关文章

  1. 如何用python将一个时间序列转化成有监督学习

    机器学习可以被用于时间序列预测. 在机器学习能使用之前,时间序列预测需要被重新转化成有监督学习.将一个序列组合成成对的输入输出序列. 在这篇教程中,你会发现如何通过使用机器学习算法将单变量和多变量的时 ...

  2. 下篇:python的基本数据类型以及对应的常用方法(列表、元组、字典、集合)

    为了日后便于查询,本文所涉及到的所有命令集合如下: python中的基本数据类型有数字.字符串.布尔值.列表.元组.字典.就像每一个职业有自己特定的技能,比如医生能看病,农民能种田,每种数据类型也有属 ...

  3. 用Python将一个列表分割成小列表

    用Python将一个列表分割成小列表 2018年01月15日 11:09:25 幸福丶如此 阅读数:16842   版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.cs ...

  4. Python 实现字符串转换成列表 实现str转换list

    其中Python strip() 方法用于移除字符串头尾指定的字符 split()就是将一个字符串分裂成多个字符串组成的列表 >>> image ='1.jsp,2.jsp,3.js ...

  5. Python将一个大文件按段落分隔为多个小文件的简单方法

    今天帮同学处理一点语料. 语料文件有点大,而且是以连续两个换行符作为段落标志,他想把它按段落分隔成多个小文件.即每3个段落组成一个新文件.因为曾经没有遇到过类似的操作,在网上找了一些类似的方法,看起来 ...

  6. Python中如何将二维列表转换成一维列表

    已知:a = [(4,2,3), (5, 9, 1), (7,8,9)]希望将二维列表转换成一维列表:["4,2,3", "5, 9, 1", "7, ...

  7. Python黑帽编程2.3 字符串、列表、元组、字典和集合

    Python黑帽编程2.3  字符串.列表.元组.字典和集合 本节要介绍的是Python里面常用的几种数据结构.通常情况下,声明一个变量只保存一个值是远远不够的,我们需要将一组或多组数据进行存储.查询 ...

  8. python基础知识3——基本的数据类型2——列表,元组,字典,集合

    磨人的小妖精们啊!终于可以归置下自己的大脑啦,在这里我要把--整型,长整型,浮点型,字符串,列表,元组,字典,集合,这几个知识点特别多的东西,统一的捯饬捯饬,不然一直脑袋里面乱乱的. 一.列表 1.列 ...

  9. python基础之 数据类型的补充,小数据类型

    1.id is详解 ID 在Python中,id是什么?id是内存地址,比如你利用id()内置函数去查询一个数据的内存地址: name = 'nba' print(id(name)) # 158583 ...

随机推荐

  1. 浅析Java常量池

    Java常量池 Java常量池其实分为两种:静态常量池和运行时常量池 1.静态常量池 所谓静态常量池,即*.class文件中的常量池,class文件中的常量池不仅仅包含字符串(数字)字面量,还包含类. ...

  2. PC端、移动端页面适配方案

    前言 页面自适应PC端.移动端大体上可以分为两种: 1.在同一个页面进行自适应布局,通常使用CSS3 @media 媒体查询器实现 2.两套页面,在后端进行统一适配,根据不同的浏览器UA返回对应的页面 ...

  3. 使用Vim编辑器,如何退出

    我们输入“冒号”,即":"(不需双引号),在下方会出现冒号,等待输入命令,我输入的是WQ.功能如下. W:write,写入 Q:quit,退出 再回车,就保存退出了 其实,保存退出 ...

  4. 【hibernate】映射继承关系

    [hibernate]映射继承关系 转载:https://www.cnblogs.com/yangchongxing/p/10405151.html ========================= ...

  5. Linux之CentOS设置别名与屏蔽别名

    一.环境 CentOS6.8 二.设置别名 ◆别名功能:让grep符合的关键字高亮 1.临时生效 [root@localhost ~]#alias grep="grep --color=au ...

  6. haproxy 在centos上cannot bind 端口的问题

    setsebool -P haproxy_connect_any=1 要不把selinux干掉也行

  7. 五分钟学会conda常用命令

    文章目录 conda常用命令 1. 获取版本号 2. 获取帮助 3. 环境管理 4. 分享环境 5. 包管理 conda常用命令 1. 获取版本号 conda --version 或 conda -V ...

  8. Python工作好找吗?没有工作经验和学历怎么找?【就业必学】

    大家都知道,随着人工智能时代的到来,Python的需求也变的越来越大了.从目前各大IT招聘网上显示招聘需求是非常大,而且薪资基本都在10k起,高的可达40-50k,当然这个要求很高,看下普遍的吧: 一 ...

  9. Internet History,Technology,and Security - Technology: Internets and Packets (Week5)

    Week5 Technology: Internets and Packets Welcome to Week 5! This week, we’ll be covering internets an ...

  10. ASP.NET+d3.js实现Sqlserver数据库的可视化展示

    效果: 数据库端: 前端展示: 实现原理: 1.在数据段建立两个存储过程 queryUserAnsawer(id) 根据用户ID返回每一题的得分,主要是bcp exe时不能直接在sqlserver中执 ...