栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python字典合并方法大全

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python字典合并方法大全

old = {'辽宁舰': '滑跃', '山东舰': '滑跃'}
new = {'福建舰': '弹射'}

today = {}
today.update(old)
today.update(new)
print(f'update方法:{today}')

today = {**old, **new}
print(f'字典拆分方法:{today}')

today = dict(**old, **new)
print(f'拆分两个字典转dict方法:{today}')
#注:两个字典的所有键必须都是字符串,因为要作为dict函数的键值对参数传入

today = dict(old, **new)
print(f'拆分一个字典转dict方法:{today}')
#注:此时只需要第二个字典的所有键是字符串

today = dict(list(old.items()) + list(new.items()))
print(f'通过列表转二元组再转字典方法:{today}')

today = dict(old.items() | new.items())
print(f'dict+items的|运算方法:{today}')

today = dict(old | new)
print(f'dict+字典的|运算方法(Python3.9及以上):{today}')

today = old | new #其实不需要dict
print(f'字典的|运算方法(Python3.9及以上):{today}')

today = {k: v for dic in [old, new] for k, v in dic.items()}
print(f'推导式方法:{today}')

from itertools import chain
today = dict(chain(old.items(), new.items()))
print(f'chain方法:{today}')

from collections import ChainMap
today = dict(ChainMap(old, new))
print(f'ChainMap方法:{today}')

#注:ChainMap的字典出现重复的键,以靠前的键对应的值为准,可以看下面这个例子
new={'山东舰': '弹射','福建舰': '弹射'}
today = dict(ChainMap(old, new))
print(f'ChainMap方法(山东舰的类型没有修改成功):{today}')

输出:

update方法:{'辽宁舰': '滑跃', '山东舰': '滑跃', '福建舰': '弹射'}
字典拆分方法:{'辽宁舰': '滑跃', '山东舰': '滑跃', '福建舰': '弹射'}
拆分两个字典转dict方法:{'辽宁舰': '滑跃', '山东舰': '滑跃', '福建舰': '弹射'}
拆分一个字典转dict方法:{'辽宁舰': '滑跃', '山东舰': '滑跃', '福建舰': '弹射'}
通过列表转二元组再转字典方法:{'辽宁舰': '滑跃', '山东舰': '滑跃', '福建舰': '弹射'}
dict+items的|运算方法:{'福建舰': '弹射', '山东舰': '滑跃', '辽宁舰': '滑跃'}
dict+字典的|运算方法(Python3.9及以上):{'辽宁舰': '滑跃', '山东舰': '滑跃', '福建舰': '弹射'}
字典的|运算方法(Python3.9及以上):{'辽宁舰': '滑跃', '山东舰': '滑跃', '福建舰': '弹射'}
推导式方法:{'辽宁舰': '滑跃', '山东舰': '滑跃', '福建舰': '弹射'}
chain方法:{'辽宁舰': '滑跃', '山东舰': '滑跃', '福建舰': '弹射'}
ChainMap方法:{'福建舰': '弹射', '辽宁舰': '滑跃', '山东舰': '滑跃'}
ChainMap方法(山东舰的类型没有修改成功):{'山东舰': '滑跃', '福建舰': '弹射', '辽宁舰': '滑跃'}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/983768.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号