gpt4 book ai didi

python - 如何重新配置​​此字典以更改其键

转载 作者:太空宇宙 更新时间:2023-11-04 02:02:27 25 4
gpt4 key购买 nike

假设我有这本字典:

>>> dic = {('a', 'l'):3, ('a', 'p'):2, ('b', 'l'):4, ('b', 'p'):1}

我如何编辑它才能像这样:

>>> dic_new = {'a':{'l':3, 'p':2}, 'b':{'l':4, 'p':1}}

每当我更改 key 时,我都会收到错误消息。我很困惑。

最佳答案

在每种情况下,只要有 d1[k1,k2]=v,您都希望设置 d2[k1][k2]=v。最简单的方法是从 defaultdict 开始。

>>> from collections import defaultdict
>>> d1 = {('a', 'l'):3, ('a', 'p'):2, ('b', 'l'):4, ('b', 'p'):1}
>>> d2 = defaultdict(dict)
>>> for k1, k2 in d1:
... d2[k1][k2] = d[k1,k2]
...
>>> d2
defaultdict(<class 'dict'>, {'a': {'l': 3, 'p': 2}, 'b': {'l': 4, 'p': 1}})
>>> dict(d2)
{'a': {'l': 3, 'p': 2}, 'b': {'l': 4, 'p': 1}}

如果您不想使用 defaultdict,请使用 setdefault 方法。

d2 = {}
for k1, k2 in d1:
d2.setdefault(k1, {})[k2] = d1[k1,k2]

关于python - 如何重新配置​​此字典以更改其键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55460276/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com