日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Python中的字典合并與列表合并技巧_python

作者:螞蟻ailing ? 更新時間: 2022-07-01 編程語言

前言

又到了每日分享Python小技巧的時候了,今天給大家分享的是Python中兩種常見的數據類型合并方法。

1 合并字典

在某些場景下,我們需要對兩個(多個)字典進行合并。例如需要將如下兩個字典進行合并:

dict1 = {"a": 2, "b": 3, "c": 5}
dict2 = {"a": 1, "c": 3, "d": 8}

且合并后的結果為:

{'c': 8, 'd': 8, 'a': 3, 'b': 3}

那么應該如何操作呢?由于兩個字典并不能夠直接進行相加,因此首先需要將各個字典轉換為Counter類,然后再進行相加。

具體代碼如下:

from collections import Counter
dict1 = {"a": 2, "b": 3, "c": 5}
dict2 = {"a": 1, "c": 3, "d": 8}
result = Counter({})
for item in [dict1,dict2]:
     result += Counter(item)
print(result) # Counter({'c': 8, 'd': 8, 'a': 3, 'b': 3})

當然,如果只是兩個字典相加,那么只用一行代碼即可:

result = Counter(dict1) + Counter(dict2)

2 合并列表

在某些場景下,我們需要對兩個(多個)列表進行合并,從而得到一個包含有各個元素出現頻率的字典

例如需要將如下兩個列表:

a = ["天", "之", "道", "損", "有", "余", "而", "補", "不", "足"]
b = ["人", "之", "道", "損", "不", "足", "而", "補", "有", "余"]

合并為:

Counter({'之': 2, '道': 2, '損': 2, '有': 2, '余': 2, '而': 2, '補': 2, '不': 2, '足': 2, '天': 1, '人': 1})

那么只需要通過如下代碼即可實現:

from collections import Counter
counter = Counter()
for item in [a, b]:
     counter.update(item)
print(counter)

當然,除了在構建詞表的時候可以使用這種方法,在對列表進行重復元素查找或者統計時同樣可以使用本方法。

原文鏈接:https://www.cnblogs.com/123456feng/p/16198894.html

欄目分類
最近更新