Python作为最近几年火爆的编程语言之一,有不同的学习方向,针对这些小猿圈Python讲师每天为大家分享一个知识点,今天分享的就是Python使用zip将list转为json的方法,希望对你的学习有所帮助。
![5256351a19203679f8657a0e3b0a01b3.png](https://i-blog.csdnimg.cn/blog_migrate/065ff84b1b239a97ad5af080537d8a0b.jpeg)
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和人工智能方面内容的小伙伴,请关注小猿圈分享的知识点,记住一定要练习小猿圈python学习,多学多看多练这才是学习一门新技术好的开始,如果没有系统的视频可以观看小猿圈,里面有更完善更全的视频。