Python 如何在嵌套字典中追加值
如何循环使用int:dict作为键:值对和 将一个新词典(例如Python 如何在嵌套字典中追加值,python,dictionary,append,Python,Dictionary,Append,如何循环使用int:dict作为键:值对和 将一个新词典(例如token1中的{5:freq5}和token3中的{1:freq11}追加到其现有的辅助词典中 dictnry={token1:{1:freq1,2:freq1a}, ,token2:{1:freq2,2:freq2a,3:freq2b} ,token3:{3:freq4}} 您可以简单地在字典上循环,一旦该键等于要在其值中附加一些dict的键,然后按照以下方式执行 例子 或 输出 您可以为要添加的
token1
中的{5:freq5}
和token3
中的{1:freq11}
追加到其现有的辅助词典中
dictnry={token1:{1:freq1,2:freq1a},
,token2:{1:freq2,2:freq2a,3:freq2b}
,token3:{3:freq4}}
您可以简单地在字典上循环,一旦该键等于要在其值中附加一些dict的键,然后按照以下方式执行 例子 或 输出
您可以为要添加的内容创建另一个字典:
{'token1': {1: 'freq1', 2: 'freq1a', 5: 'freq5'},
'token2': {1: 'freq2', 2: 'freq2a', 3: 'freq2b'},
'token3': {1: 'freq11', 3: 'freq4'}}
输出:
import json
d = {
"token1": {
1: "freq1",
2: "freq1a",
},
"token2": {
1: "freq2",
2: "freq2a",
3: "freq2b",
},
"token3": {
3: "freq4",
}
}
print("Before:")
print(json.dumps(d, indent=4))
key_entry_to_add = {
"token1": {
5: "freq5",
},
"token3": {
1: "freq11",
}
}
for key, entry in key_entry_to_add.items():
entry_key, entry_val = next(iter(entry.items()))
d[key][entry_key] = entry_val
print("After:")
print(json.dumps(d, indent=4, sort_keys=True))
我不知道你的问题是什么;假设你有
outer_dict={'internal_dict1':{'value1':“x1”}
如果你想添加新的dict,你可以这样做:outer_dict[“internal_dict2”]={…}
如果你想更新internal dict中的值,那么你可以做outer_dict[“internal_dict1”][“value1”]=“new_value”
;要创建内部dict的新键,您正在执行相同的outer_dict[“internal_dict 1”][“value2”]=“new_value”
看起来您已经编写了一些伪代码,但尚未尝试实现它。你的问题(我该怎么做
)太宽泛了:不清楚你对伪代码的哪一部分有问题。欢迎来到SO。这不是一个讨论论坛或教程。请花点时间阅读和阅读该页面上的其他链接。花些时间练习这些例子。它将让您了解Python提供的帮助您解决问题的工具。
dictionary['token1'][5] = 'freq5'
dictionary['token3'][1] = 'freq11'
{'token1': {1: 'freq1', 2: 'freq1a', 5: 'freq5'},
'token2': {1: 'freq2', 2: 'freq2a', 3: 'freq2b'},
'token3': {1: 'freq11', 3: 'freq4'}}
import json
d = {
"token1": {
1: "freq1",
2: "freq1a",
},
"token2": {
1: "freq2",
2: "freq2a",
3: "freq2b",
},
"token3": {
3: "freq4",
}
}
print("Before:")
print(json.dumps(d, indent=4))
key_entry_to_add = {
"token1": {
5: "freq5",
},
"token3": {
1: "freq11",
}
}
for key, entry in key_entry_to_add.items():
entry_key, entry_val = next(iter(entry.items()))
d[key][entry_key] = entry_val
print("After:")
print(json.dumps(d, indent=4, sort_keys=True))
Before:
{
"token1": {
"1": "freq1",
"2": "freq1a"
},
"token2": {
"1": "freq2",
"2": "freq2a",
"3": "freq2b"
},
"token3": {
"3": "freq4"
}
}
After:
{
"token1": {
"1": "freq1",
"2": "freq1a",
"5": "freq5"
},
"token2": {
"1": "freq2",
"2": "freq2a",
"3": "freq2b"
},
"token3": {
"1": "freq11",
"3": "freq4"
}
}