我一直被这个问题困住了很长一段时间,就是想不通。我只是想能够了解我缺少什么以及为什么需要它。 我需要做的是创建一个函数,将每个给定的键/值对添加到字典中。参数 key_value_pairs 将是 (key, value) 形式的元组列表。
def add_to_dict(d, key_value_pairs):
newinputs = [] #creates new list
for key, value in key_value_pairs:
d[key] = value #updates element of key with value
if key in key_value_pairs:
newinputs.append((d[key], value)) #adds d[key and value to list
return newinputs
当 d 和 key_value_pairs 有不同的键时,我不知道如何更新“值”变量。
这些场景中的前三个可行,但其余的都失败了
>>> d = {}
>>> add_to_dict(d, [])
[]
>>> d
{}
>>> d = {}
>>> add_to_dict(d, [('a', 2])
[]
>>> d
{'a': 2}
>>> d = {'b': 4}
>>> add_to_dict(d, [('a', 2)])
[]
>>> d
{'a':2, 'b':4}
>>> d = {'a': 0}
>>> add_to_dict(d, [('a', 2)])
[('a', 0)]
>>> d
{'a':2}
>>> d = {'a', 0, 'b': 1}
>>> add_to_dict(d, [('a', 2), ('b': 4)])
[('a', 2), ('b': 1)]
>>> d
{'a': 2, 'b': 4}
>>> d = {'a': 0}
>>> add_to_dict(d, [('a', 1), ('a': 2)])
[('a', 0), ('a':1)]
>>> d
{'a': 2}
谢谢
已编辑。
请您参考如下方法:
Python 内置了这个功能:
>>> d = {'b': 4}
>>> d.update({'a': 2})
>>> d
{'a': 2, 'b': 4}
或者假设您不允许使用 dict.update:
>>> d = dict(d.items() + {'a': 2}.items()) # doesn't work in python 3
