前言
又到了每日分享Python小技巧的時候了,今天給大家分享的是Python中兩種常見的資料型別合并方法,好奇知道是啥嗎?就不告
訴你,想知道就往下看呀,話不多說,直接上…
1 合并字典
在某些場景下,我們需要對兩個(多個)字典進行合并,例如需要將如下兩個字典進行合并:
1 dict1 = {"a": 2, "b": 3, "c": 5}
2 dict2 = {"a": 1, "c": 3, "d": 8}
且合并后的結果為:
1 {'c': 8, 'd': 8, 'a': 3, 'b': 3}
那么應該如何操作呢?由于兩個字典并不能夠直接進行相加,因此首先需要將各個字典轉換為Counter類,然后再進行相加,具體代碼如下:
Python學習交流Q群:906715085#### 1 from collections import Counter 2 dict1 = {"a": 2, "b": 3, "c": 5} 3 dict2 = {"a": 1, "c": 3, "d": 8} 4 result = Counter({}) 5 for item in [dict1,dict2]: 6 result += Counter(item) 7 print(result) # Counter({'c': 8, 'd': 8, 'a': 3, 'b': 3})
當然,如果只是兩個字典相加,那么只用一行代碼即可:
1 result = Counter(dict1) + Counter(dict2)

2 合并串列
在某些場景下,我們需要對兩個(多個)串列進行合并,從而得到一個包含有各個元素出現頻率的字典,例如需要將如下兩個串列:
1 a = ["天", "之", "道", "損", "有", "余", "而", "補", "不", "足"] 2 b = ["人", "之", "道", "損", "不", "足", "而", "補", "有", "余"]
合并為:
1 Counter({'之': 2, '道': 2, '損': 2, '有': 2, '余': 2, '而': 2, '補': 2, '不': 2, '足': 2, '天': 1, '人': 1})
那么只需要通過如下代碼即可實作:
1 from collections import Counter 2 counter = Counter() 3 for item in [a, b]: 4 counter.update(item) 5 print(counter)
當然,除了在構建詞表的時候可以使用這種方法,在對串列進行重復元素查找或者統計時同樣可以使用本方法,
最后
今天分享的小技能希望能夠在學習時對你有幫助,記得收藏起來慢慢學,喜歡的點贊關注,更多技巧實時掌握,沒懂的記得點贊
評論,我一般都會解答的,

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/466957.html
標籤:Python
