掃二維碼與項(xiàng)目經(jīng)理溝通
我們在微信上24小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
大家好,我是皮皮。

前幾天在Python最強(qiáng)王者交流群【群除我佬】問了一個(gè)Python基礎(chǔ)的問題,這里拿出來給大家分享下。
這里一共整理了5個(gè)方法,一起來看看吧!
使用for循環(huán)的確可行,但是感覺應(yīng)該有其他更好的方法。詳情見第一部分的截圖。
這里【吳超建】給了一個(gè)代碼,如下圖所示:
通過不斷的解包,也是可以的,還好這里只有3個(gè)元素,如果有上百個(gè)元素的話,這么寫,容易崩潰。
后來【DIY】提供了一個(gè)方法,如下圖所示:
代碼如下:
import functools
a = [{'a': 1}, {'b': 2}, {'c': 3}]
b = functools.reduce(lambda x, y: dict(**x, **y), a)
print(b)
后來【隔壁山楂】也給了一個(gè)代碼,使用map,輕易搞定,代碼如下所示:
最后這個(gè)方法是【~上善居士~ *郭百川】提供的,要想合并多個(gè)字典),可以考慮用chainMap,建立多個(gè)字典合并的一個(gè)映射,一般用于數(shù)據(jù)查找,缺點(diǎn)就是鍵值查找只會(huì)從第一個(gè)字典開始找,第一個(gè)沒有才找第二個(gè)。你這個(gè)列表中每個(gè)字典都只有一個(gè)鍵值對(duì)而且無重復(fù),直接下面醬紫也可以。
代碼如下:
一般要迭代生成新序列,首先應(yīng)該想到的是各種推導(dǎo)式,然后才是map,推導(dǎo)式比map速度快一點(diǎn)點(diǎn),這在大佬的書里有例子實(shí)證。
大家好,我是皮皮。這篇文章主要盤點(diǎn)了一個(gè)Python處理字典的問題,文中針對(duì)該問題,給出了具體的解析和代碼實(shí)現(xiàn),一共5個(gè)方法,幫助粉絲順利解決了問題。

我們在微信上24小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流