久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

python算法,如何優(yōu)雅的合并2個列表字典?

瀏覽:150日期:2022-09-02 15:06:23

問題描述

我有2個字典,如下:

a = [{’泉州seo’: ’2,1’}, {’泉州網(wǎng)站建設(shè)’: ’1’}, {’泉州網(wǎng)絡(luò)公司’: ’’}, {’泉州微信小程序’: ’’}]b = [{’泉州seo’: ’’}, {’泉州網(wǎng)站建設(shè)’: ’’}, {’泉州網(wǎng)絡(luò)公司’: ’’}, {’泉州微信小程序’: ’15,34’}]

2個字典分別存放的是我一些數(shù)據(jù),我現(xiàn)在想要的效果是把a和b合并起來顯示,比如這樣:

c = [{’泉州seo’: ’2,1’}, {’泉州網(wǎng)站建設(shè)’: ’1’}, {’泉州網(wǎng)絡(luò)公司’: ’’}, {’泉州微信小程序’: ’15,34’}]

就是這樣一個簡單的效果!請問要如何用最簡單的代碼來實現(xiàn)!歡迎高手挑戰(zhàn)!

問題解答

回答1:

字典貌似不應(yīng)該這樣用的吧……我想給出的答案是

c = {k:d1[k]+d2[k] for d1,d2 in zip(a,b) for k in d1}

不過根據(jù)要求答案應(yīng)該是

c = [{k:d1[k]+d2[k]} for d1,d2 in zip(a,b) for k in d1]回答2:

a中每個字典的值和b中每個字典的值對比,如果b中字典的值比a相應(yīng)字典的值大,就copy過來,然后賦值給c.

>>> a = [{’s1’: ’2,1’}, {’s2’: ’1’}, {’s3’: ’’}, {’s4’: ’’}]>>> b = [{’s1’: ’’}, {’s2’: ’’}, {’s3’: ’’}, {’s4’: ’15,34’}]>>> for i in range(len(a)):if cmp(a[i],b[i]) < 0: a[i] = b[i].copy()>>> c = a>>> print c[{’s1’: ’2,1’}, {’s2’: ’1’}, {’s3’: ’’}, {’s4’: ’15,34’}]

標簽: Python 編程
主站蜘蛛池模板: 青冈县| 娱乐| 迁西县| 尼木县| 育儿| 盖州市| 新郑市| 信宜市| 永州市| 赤峰市| 民和| 澎湖县| 册亨县| 黄大仙区| 疏附县| 玉溪市| 许昌市| 奉贤区| 吉隆县| 诸城市| 凤山市| 霍山县| 多伦县| 柳州市| 嘉黎县| 沧源| 万载县| 玉林市| 拉萨市| 开原市| 宁都县| 金堂县| 德令哈市| 明溪县| 乐陵市| 济南市| 来安县| 敖汉旗| 司法| 石屏县| 拉萨市|