如何以一个字典的值作为另一个字典的键合并字典?Python更优实现
更Pythonic的字典映射实现方式
你可以用字典推导式来实现,这是Python里处理这类映射最简洁且符合风格的写法:
result = {key: data_set[value] for key, value in data_map.items()}
这种方式的优势很明显:
- 直接生成新字典,不会修改原有的
data_map(你的循环写法会直接覆盖原字典内容,如果之后还要用到原data_map就会出问题) - 代码简洁直观,一行就完成了映射逻辑
- 完全贴合Python推崇的"可读性优先"风格
如果确实需要修改原data_map(比如原字典后续不再使用),也可以用更紧凑的写法,但不如字典推导式通用:
data_map.update((k, data_set[v]) for k, v in data_map.items())
一般更推荐生成新字典的方式,避免不必要的副作用。
内容的提问来源于stack exchange,提问作者whitewalls
相关产品推荐
相关产品推荐

