Dictionary 将一个字典的值合并为另一个字典的键
我有两本字典:Dictionary 将一个字典的值合并为另一个字典的键,dictionary,merge,Dictionary,Merge,我有两本字典: StatePops={'AL':4887871, 'AK':737438, 'AZ':7278717, 'AR':3013825} StateNames={'AL':'Alabama', 'AK':'Alaska', 'AZ':'Arizona', 'AR':'Arkansas'} 我正在尝试合并,因此StateNames的值是StatePops的关键 前 我还必须显示人口超过400万的州的名称 感谢您的帮助 您尚未指定要用哪种编程语言解决此问题 尽管如此,这里还是有一个Py
StatePops={'AL':4887871, 'AK':737438, 'AZ':7278717, 'AR':3013825}
StateNames={'AL':'Alabama', 'AK':'Alaska', 'AZ':'Arizona', 'AR':'Arkansas'}
我正在尝试合并,因此StateNames的值是StatePops的关键
前
我还必须显示人口超过400万的州的名称
感谢您的帮助 您尚未指定要用哪种编程语言解决此问题 尽管如此,这里还是有一个Python解决方案
state_pops = {
'AL': 4887871,
'AK': 737438,
'AZ':7278717,
'AR':3013825
}
state_names = {
'AL':'Alabama',
'AK':'Alaska',
'AZ':'Arizona',
'AR':'Arkansas'
}
states = dict([([state_names[k],state_pops[k]]) for k in state_pops])
final = {k:v for k, v in states.items() if v > 4000000}
print(states)
print(final)
首先,您可以使用states变量中预定义的dictpython函数合并两个字典。这里,k是一个迭代器,它被用作州名称和州POP的索引。
然后,将过滤后的字典存储在final中,其中使用states.items()访问states中的键和值,并使用str函数将其转换为字符串
可能有更简单的解决方案,但这是我所能优化的问题
希望这有帮助。在Python中无法更改字典键。您需要将修改后的键值对添加到字典中,然后删除旧的键值,或者可以创建新的字典。我会选择第二个选项,即创建一个新词典
myDict = {}
for i in StatePops:
myDict.update({StateNames[i] : StatePops[i]})
这将myDict
输出为
{'Alabama': 4887871, 'Alaska': 737438, 'Arizona': 7278717, 'Arkansas': 3013825}
{'Alabama': 4887871, 'Alaska': 737438, 'Arizona': 7278717, 'Arkansas': 3013825}