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控制键盘鼠标pynput的详细用法

pynput这个库让你可以控制和监控输入设备。 对于每一种输入设备,它包含一个子包来控制和监控该种输入设备: pynput.mouse:包含控制和监控鼠标或者触摸板的类。 py...

Django 多语言教程的实现(i18n)

Django 多语言教程的实现(i18n)

最近公司准备扩张海外业务,所以要给 Django 系统添加 国际化与本土化 支持。国际化一般简称 i18n ,代表 Internationalization 中 i 和 n 有 18 个...

基于Python中单例模式的几种实现方式及优化详解

单例模式 单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在。当你希望在整个系统中,某个类只能出现一个实例时,单例对象...

Python2和Python3的共存和切换使用

Python2和Python3的共存和切换使用

  从python2到python3,这两个版本可以说是从语法、编码等多个方面上都有很大的差别。为了不带入过多的累赘,Python 3.0在设计的时候没有考虑向下相容,也就是说许多针对早...

浅谈Python中的可迭代对象、迭代器、For循环工作机制、生成器

浅谈Python中的可迭代对象、迭代器、For循环工作机制、生成器

1.iterable iterator区别 要了解两者区别,先要了解一下迭代器协议: 迭代器协议是指:对象需要提供__next__()方法,它返回迭代中的元素,在没有更多元素后,抛出St...