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的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網。
新聞熱點
疑難解答