Python中的字典合并与列表合并技巧
作者:蚂蚁ailing 时间:2021-01-02 06:07:35
前言
又到了每日分享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
标签:Python,字典,列表,合并,技巧
0
投稿
猜你喜欢
python-try-except:pass的用法及说明
2022-07-21 13:22:24
mpvue跳转页面及注意事项
2024-05-02 16:09:57
详解pytorch的多GPU训练的两种方式
2023-08-04 09:58:29
Python:二维列表下标互换方式(矩阵转置)
2022-07-09 13:29:58
(X)HTML中最多余的元素标签
2008-06-15 15:48:00
Python self用法详解
2021-08-24 04:26:41
在Web关闭页面时发送Ajax请求的实现方法
2024-04-18 10:14:37
关于 Python json中load和loads区别
2021-04-24 20:30:51
Python抓取通过Ajax加载数据的示例
2023-12-09 21:28:38
MySQL基于GTID主从搭建
2024-01-23 18:17:56
Python QQBot库的QQ聊天机器人
2022-03-18 23:29:30
vue 全局引用公共的组件以及公共的JS文件问题
2024-05-29 22:44:46
tensorflow: 查看 tensor详细数值方法
2022-07-24 09:40:37
对Python+opencv将图片生成视频的实例详解
2022-01-03 08:42:16
Python输出各行命令详解
2021-12-03 05:29:18
巧用特殊的空格字符
2009-04-10 18:32:00
PyTorch零基础入门之逻辑斯蒂回归
2022-09-09 03:44:25
python 字典的概念叙述和使用方法
2021-11-08 00:42:06
Python描述符descriptor使用原理解析
2022-03-24 20:12:48
Python爬虫实现网页信息抓取功能示例【URL与正则模块】
2023-12-09 05:15:03