python 数组格式转换
格式转换
arr1 = [
{'name': 'jack', 'hobby': '西瓜'},
{'name': 'jack', 'hobby': '冬瓜'},
{'name': 'rose', 'hobby': '木瓜'},
{'name': 'rose', 'hobby': '甜瓜'},
{'name': 'jack', 'hobby': '地瓜'},
{'name': 'rose', 'hobby': '香瓜'}
]
arr5 = [
{'name': 'jack', 'hobby': ['西瓜', '冬瓜', '地瓜']},
{'name': 'rose', 'hobby': ['木瓜', '甜瓜', '香瓜']}
]
'''
数组格式转换 把arr1转成arr5
'''
#匿名函数指定二维数组内容转换
tosingle=lambda arr:[ i.get('name') for i in arr]
arr2 = []#目标数组
for x in arr1:
name_list=tosingle(arr2) #获取姓名列表
if x.get('name') not in name_list:#名字如果不在列表中,就放进去
arr2.append({'name':x.get('name'),'hobby':[]})
name_list2 = tosingle(arr2) # 获取姓名列表
index = name_list2.index(x.get('name')) # 获取姓名在目标键值中的索引
arr2[index]['hobby'].append(x.get('hobby')) # 存入对应hobby print(arr2)
python 数组格式转换的更多相关文章
- Python datatime 格式转换,插入MySQL数据库
Python datatime 格式转换,插入MySQL数据库 zoerywzhou@163.com http://www.cnblogs.com/swje/ 作者:Zhouwan 2017-11-2 ...
- Python 日期格式转换
经常需要爬取网站上的时间信息,不同的网站又有不同的日期显示方式.而我需要将日期格式转化为一种特定的格式,所以为了简便和学习,记录下各种不同的日期格式转换. 日期格式化符号: %y :两位数的年份表示( ...
- Python 数字格式转换
# 数字格式转换v1 '''a = input() a1 = list(a) b = ["零", "一", "二", "三&quo ...
- python日期格式转换小记
utc格林时间==>东八区北京时间 原始日期格式: utctime = ‘2016-07-26 10:08:29’ localtime = (datetime.datetime.fromtime ...
- Python 时间格式转换
Python time, datetime模块常用方法 1.使用time模块,获取当前时间戳~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~import timetime.time( ...
- Python字符串格式转换
转换类型 转换类型 说明 d, i 带符号十进制 b 无符号二进制 o 无符号八进制 u 无符号十进制 x 无符号十六进制(小写) X 无符号十六进制(大写) e 科学计数法表示的浮点数(小写) E ...
- 记一次python时间格式转换遇到的坑
需求:拿到指定格式的时间的前一天的时间,如果今天是月初,年初,自动转换,比如:输入时间是:2019-06-27 23:59:59输出时间是:2019-06-26 23:59:59 之前用datetim ...
- python 图片格式转换png转jpg,如何利用python给图片添加半透明水印
from PIL import Imageim = Image.open(r'd:\test2.png')r, g, b, a = im.split()im = Image.merge("R ...
- php 字符串内容是数组格式 转换成数组
一个简单的应用.. 例, $str = "array( 'USD'=>'1', 'GBP'=>'0.6494', 'EUR'=>'0.7668' ,'JPY'= ...
随机推荐
- css的三种导入方式
内联样式表 <p style="font-size:50px; color:blue">css内联样式表</p> 内部样式表 <style type= ...
- 《手把手教你构建自己的 Linux 系统》学习笔记(10)
目录 /etc/fstab 文件的作用是什么? Linux 内核的图形化启动是怎么回事? Linux 系统中的文件名是否以大小写来进行区别? 「GRUB 中无法找到硬盘」怎么解决? 「GRUB 及配置 ...
- android中关于时间的控件
1.日期选择器 <DatePicker android:layout_width="wrap_content" android:layout_height="wra ...
- java设计模式学习笔记--依赖倒转原则
依赖倒转原则简述 1.高层模块不应该依赖低层模块,二者都应该依赖其抽象 2.抽象不应该依赖细节,细节应该依赖抽象 3.依赖倒转得中心思想时面向接口编程 4.依赖倒转原则时基于这样得设计理念:相对于细节 ...
- C#中System.ServiceProgress报错
场景 在C#中检索本地计算机所有服务时,使用 System.ServiceProcess.ServiceController[] services = System.ServiceProcess.Se ...
- MVC开发模式以及Smarty模板引擎的使用
Linux 全局安装 composer 将目录切换到/usr/local/bin/目录 cd /usr/local/bin/ 在 bin 目录中下载 composer curl -sS https:/ ...
- VMware、Linux(CentOS 7)安装,供参考。
前端开发,学习Linux,记录安装中的一些问题,比如在安装最小版后,如何由命令行转为图形界面等. -------------笔记中截图参考其他资料. 下载文件 VMware 12: 链接:https: ...
- npm ERR! Cannot read property 'match' of undefined
在Vue项目中运行npm i命令时直接提示npm ERR! Cannot read property 'match' of undefined错误了,此时需要把package-lock.json文件删 ...
- 谷歌F12获取接口信息
- Linux c++ string转其他类型
#include <iostream> #include <sstream> #include <string> using namespace std; temp ...