前言 又到了每日分享Python小技巧的時候了,今天給大家分享的是Python中兩種常見的數據類型合併方法。好奇知道是啥嗎?就不告 訴你,想知道就往下看呀。話不多說,直接上… 1 合併字典 在某些場景下,我們需要對兩個(多個)字典進行合併。例如需要將如下兩個字典進行合併: 1 dict1 = {"a ...
前言
又到了每日分享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)
當然,除了在構建詞表的時候可以使用這種方法,在對列表進行重覆元素查找或者統計時同樣可以使用本方法。
最後
今天分享的小技能希望能夠在學習時對你有幫助,記得收藏起來慢慢學。喜歡的點贊關註,更多技巧實時掌握,沒懂的記得點贊
評論,我一般都會解答的。