使用循环用新列表更新python字典值

2024-04-26 13:03:19 发布

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

我有一个Python字典,我需要根据现有键用list更新字典值。你知道吗

现有词典

zone = {
'a':11,
'b':22,
'c':12
}

新建列表

list_ = (10, 44, 55)

我需要用这个列表更新那本词典

我需要这样的字典:

zone = {
'a':10,
'b':44,
'c':55
}

Tags: zone列表字典list词典本词典
2条回答

您可以从区域中获取键,并将其与列表一起zip,然后将结果转换为dict

zone = {'a':11, 'b':22, 'c':12 }
list_ = [10, 44, 55]

zone = dict(zip((*zone,), list_))

#{'a': 10, 'b': 44, 'c': 55}

基本上,字典没有顺序。因此,如果没有排序标准,就不能按顺序进行设置。但是,如果要按字典键的顺序进行设置,则可以这样做。请参考以下内容:

zone = {'b':22, 'a':11, 'c':12}
data = (10, 44, 55)

z_ordered = list(zone.keys())
z_ordered.sort()

for index in range(len(z_ordered)):
    zone[z_ordered[index]] = data[index]

相关问题 更多 >