我有以下代码。我找不到创建新键并将数字附加到值列表的方法。
from typing import Dict, List, Set
diccionary: Dict[str, List[int]]
diccionary = {}
diccionary["key"].append(2)
diccionary["key2"].append(4)
diccionary["key2"].append(1)
print(diccionary)
当我运行此代码时,我得到:
Traceback (most recent call last):
File "diccionario.py", line 5, in <module>
diccionario["key"].append(2)
KeyError: 'key'
使用setdefault
:
diccionary = {}
diccionary.setdefault("key", []).append(2)
diccionary.setdefault("key2", []).append(4)
diccionary.setdefault("key2", []).append(1)
print(diccionary)
或者,使用defaultdict
:
from collections import defaultdict
diccionary = defaultdict(list)
diccionary["key"].append(2)
diccionary["key2"].append(4)
diccionary["key2"].append(1)
print(dict(diccionary))
输出:
{'key': [2], 'key2': [4, 1]}