欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python兩個字典鍵同值相加的幾種方法

 更新時間:2019年03月05日 10:36:35   作者:杰瑞26  
今天小編就為大家分享一篇關(guān)于Python兩個字典鍵同值相加的幾種方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

兩個字典A = {'a': 1, 'b': 2, 'c': 3}, B = {'b': 4, 'c': 6, 'd': 8} 要合并這兩個字典,鍵值同則相加。

兩個字典如果不考慮鍵相同則相加的話,可以使用d1.update(d2)可以很方便合并,但這樣的后面的字典到中的值會覆蓋字典d1中的值。

>>> A = {'a': 1, 'b': 2}
>>> B = {'a': 8, 'c': 3}
>>> A.update(B)
>>> A
{'a': 8, 'b': 2, 'c': 3}

如果要考慮兩個字典,如果考慮鍵同則值相加的問題,可以使用下面的幾種方法:

方法一:

>>> A = {'a': 1, 'b': 2, 'c': 3}
>>> B = {'b': 4, 'c': 6, 'd': 8}
>>> for key,value in B.items():
...   if key in A:
...     A[key] += value
...   else:
...     A[key] = value
>>> dict(sorted(A.items(), key=lambda d:d[1]))
{'a': 1, 'b': 6, 'd': 8, 'c': 9}

方法二:

>>> A = {'a': 1, 'b': 2, 'c': 3}
>>> B = {'b': 4, 'c': 6, 'd': 8}
>>> C = {}
>>> for key in list(set(A) | set(B)):
...   if A.get(key) and B.get(key):
...     C.update({key: A.get(key) + B.get(key)})
...   else:
...     C.update({key: A.get(key) or B.get(key)})
>>> C
{'c': 9, 'd': 8, 'a': 1, 'b': 6}

方法三:

>>> A = {'a': 1, 'b': 2, 'c': 3}
>>> B = {'b': 4, 'c': 6, 'd': 8}
>>> def dict_union(d1, d2):
...   keys = d1.keys() | d2.keys()
...   temp = {}
...   for key in keys:
...     temp[key] = sum([d.get(key,0) for d in (d1, d2)])
...   return temp
>>> C = dict_union(A, B)
>>> C
{'d': 8, 'a': 1, 'b': 6, 'c': 9}

方法四:

>>> A = {'a': 1, 'b': 2, 'c': 3}
>>> B = {'b': 4, 'c': 6, 'd': 8}
>>> C = {}
>>> for key1 in A:
...   for key2 in B:
...     if key1 in B:
...       C[key1] = A[key1] + B[key1]
...     else:
...       C[key1] = A[key1]
...       if key2 not in A:
...         C[key2] = B[key2]
>>> C
{'a': 1, 'd': 8, 'b': 6, 'c': 9}

方法五:

>>> A = {'a': 1, 'b': 2, 'c': 3}
>>> B = {'b': 4, 'c': 6, 'd': 8}
>>> C = {}
>>> for key in A:
...   if B.get(key):
...     C[key] = A[key] + B[key]
...   else:
...     C[key] = A[key]
>>> for key in B:
...   if not A.get(key):
...     C[key] = B[key]
>>> C
{'a': 1, 'b': 6, 'c': 9, 'd': 8}

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

相關(guān)文章

  • Python列表list操作相關(guān)知識小結(jié)

    Python列表list操作相關(guān)知識小結(jié)

    今天,本喵帶大家仔細(xì)溫習(xí)一下Python的列表,溫故而知新,不亦說乎,需要的朋友可以參考下
    2020-01-01
  • Python OpenCV實現(xiàn)基本圖形繪制

    Python OpenCV實現(xiàn)基本圖形繪制

    這篇文章主要介紹了Python OpenCV實現(xiàn)基本圖形繪制,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Python通過wordcloud庫實現(xiàn)將單詞生成詞云

    Python通過wordcloud庫實現(xiàn)將單詞生成詞云

    Python的wordcloud庫是一個用于生成詞云的Python包,它可以將一段文本中出現(xiàn)頻率高的單詞按其出現(xiàn)頻率大小以及顏色深淺排列成一個詞云圖形,從而更好地展示文本中的信息,你可以使用wordcloud庫來生成各種類型的詞云,本文就介紹了如何生成心型詞云
    2023-06-06
  • python和php哪個容易學(xué)

    python和php哪個容易學(xué)

    在本篇文章里小編給大家整理的是一篇關(guān)于python和php哪個學(xué)起來簡單的相關(guān)文章,需要的朋友們可以參考下。
    2020-06-06
  • Python創(chuàng)建日歷實例

    Python創(chuàng)建日歷實例

    這篇文章主要介紹了Python創(chuàng)建日歷實例,不使用Python提供的calendar實現(xiàn),需要的朋友可以參考下
    2014-08-08
  • 淺談python 調(diào)用open()打開文件時路徑出錯的原因

    淺談python 調(diào)用open()打開文件時路徑出錯的原因

    這篇文章主要介紹了淺談python 調(diào)用open()打開文件時路徑出錯的原因,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Python 文件和輸入輸出小結(jié)

    Python 文件和輸入輸出小結(jié)

    Python 是面向?qū)ο缶幊陶Z言,文件也是一種類,下面簡單介紹下,方便需要的朋友
    2013-10-10
  • python使用 HTMLTestRunner.py生成測試報告

    python使用 HTMLTestRunner.py生成測試報告

    這篇文章主要介紹了python使用 HTMLTestRunner.py生成測試報告 ,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • 使用Python解決序列重疊問題

    使用Python解決序列重疊問題

    這篇文章主要為大家詳細(xì)介紹了如何使用Python解決序列重疊問題,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-03-03
  • 基于Pycharm加載多個項目過程圖解

    基于Pycharm加載多個項目過程圖解

    這篇文章主要介紹了基于Pycharm加載多個項目過程圖解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01

最新評論