python使用zip将list转为json的方法

yipeiwu_com6年前Python基础

zip()函数将可迭代对象作为参数,并打包成元组,返回的是一个个zip对象,可以使用list或dict转换返回结果,使用*zip可以将打包的对象分解成列表

>>> l=[1,2,3,4]
>>> keys=['a','b','c','d']
>>> zip(keys,l)
<zip object at 0x000001E0AFA327C8>
>>> dict(zip(keys,l))
{'a': 1, 'b': 2, 'c': 3, 'd': 4}
>>> list(zip(keys,l))
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]

# 若参数列表的长度不一样,则以最短长度为准
>>> m=[1,2,3]
>>> list(zip(keys,m))
[('a', 1), ('b', 2), ('c', 3)]

# 分解zip
>>> a1,a2=zip(*zip(keys,l))
>>> a1
('a', 'b', 'c', 'd')
>>> a2
(1, 2, 3, 4)
>>> 

将二维列表转成json

>>> import json
>>> l=[[1,2,3,4],[5,6,7,8],[9,10,11,12]]
>>> keys=['a','b','c','d']
>>> list_json=[dict(zip(keys,item)) for item in l]
# indent缩进量,ensure_ascii=False支持中文
>>> str_json=json.dumps(list_json,indent=2, ensure_ascii=False)
>>> print(str_json)
[
 {
 "a": 1,
 "b": 2,
 "c": 3,
 "d": 4
 },
 {
 "a": 5,
 "b": 6,
 "c": 7,
 "d": 8
 },
 {
 "a": 9,
 "b": 10,
 "c": 11,
 "d": 12
 }
]

以上这篇python使用zip将list转为json的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python正则表达式中的括号匹配问题

问题: m = re.findall('[0-9]*4[0-9]*', '[4]') 可以匹配到4. m = re.findall('([0-9])*4([0-9])*', '[4]'...

python使用pip安装模块出现ReadTimeoutError: HTTPSConnectionPool的解决方法

今天使用pip安装第三库时,有时会报错: pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(hos...

Python基础学习之时间转换函数用法详解

Python基础学习之时间转换函数用法详解

本文实例讲述了Python基础学习之时间转换函数用法。分享给大家供大家参考,具体如下: 前言 python的时间格式分为多种,几种格式之间的转换方法时常是我们遇到的而且是经常忘记的点,p...

Python脚本实时处理log文件的方法

这个Python脚本是用来对实时文件的内容监控,比如 Error 或者 time out 字段都可以进行自定义;算是我的第一个真正的Python脚本,自己感觉还是比较臃肿,不过打算放到b...

Python生成器以及应用实例解析

本文研究的主要是Python生成器及其应用,具体如下。 一、定义 可以理解为一种数据类型,这种数据类型自动实现了迭代器协议(其他的数据类型需要调用自己内置的__iter__方法),所以生...