如何将给定列表的值放入现有词典中?

2024-10-06 12:20:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一张清单,上面有他们的元素

my_list = ['a', 'b', 'c']

还有一个字典,它有键和空白字符串作为它们的值

my_dictionary = {
    'key_a' : '',
    'key_b' : '',
    'key_c' : '',
}

问题是:用什么python方法将列表中的每一个元素(按特定顺序)作为这些字典值中的每一个

结果应该是这样的:

my_dictionary = {
    'key_a' : 'a',
    'key_b' : 'b',
    'key_c' : 'c',
}

Ps:请注意,我不需要字典值在该副本之后保持有序。正如在评论中指出的,在Python3.7之后,字典的顺序不再得到保证


Tags: 方法key字符串元素列表dictionary字典顺序
3条回答

我假设你的字典顺序是有保证的,或者你不在乎顺序。
您可以使用内置函数zip
迭代两个不同的可编程对象是非常有用的函数。
文档:https://docs.python.org/3/library/functions.html#zip

my_dictionary = {
    'key_a': '',
    'key_b': '',
    'key_c': '',
}

my_list = ['a', 'b', 'c']

for key, item in zip(my_dictionary, my_list):
    my_dictionary[key] = item

print(my_dictionary)

输出: {'key_a': 'a', 'key_b': 'b', 'key_c': 'c'}

你可以试试这个

dict(zip(my_dictionary,my_list))

使用.update方法更新my_dictionary


输出

{'key_a': 'a', 'key_b': 'b', 'key_c': 'c'}

注意:这适用于python3.7或更高版本

理由在@MisterMiyagi的评论中说明

试试这个:

i = 0
for key in my_dict:
      my_dict[key] = my_list[i]
      i+=1

Output : {'key_a': 'a', 'key_b': 'b', 'key_c': 'c'}

相关问题 更多 >