我有一个包含两个元素(键值对)的列表,它们都具有相同的键。然而,一些值是不同的,如下所示。
alist = [{u'a': u'x', u'b': u'y', u'c': u'z'}, {u'a': u'x', u'b': u'm', u'c': u'n'}]
我希望能够从字典中获取用户输入更新的新数据,并将其更新到alist中,如下所示。
a_dict = {'a': ['user_input_x'], 'b': ['user_input_y', 'user_input_m'], 'c': ['user_input_z', 'user_input_n']}
结果列表应该像这样,
ans_alist = [{u'a': u'user_input_x', u'b': u'user_input_y', u'c': u'user_input_z'}, {u'a': u'user_input_x', u'b': u'user_input_m', u'c': u'user_input_n'}]
我正在尝试几个事情,以下是代码片段,但由于这是字典,代码正在用相同的值更新所有键,
for i in range(0, 2):
for key in alist:
key['a'] = a_dict['a'][i]
key['b'] = a_dict['b'][i]
key['c'] = a_dict['b'][i]
print alist
ans_alist = [{u'a': ['user_input_x'], u'b': 'user_input_y', u'c': 'user_input_n'}, {u'a': ['user_input_x'], u'b': 'user_input_y', u'c': 'user_input_n'}]
感谢您的帮助。
a_dict
,在alist
中查找匹配的键。如果找到匹配项,则将该键的值替换为匹配值。编写代码,如果仍然无法正常工作,请发布它,我们会为您修复。 - Łukasz Szczesiak