如何将项作为值添加到嵌套字典中

2024-06-11 18:35:48 发布

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

我有一个嵌套字典:

cities = {
'new york city':{
    'country':'united states',
    'population': '8 million',
    'attraction':'statue of liberty'},
}

。。。我正在尝试将一个新的键和几个键-值对作为项添加到嵌套dict中:

^{pr2}$

。。。但它不起作用。(我使用的是3.5)


Tags: ofcitynew字典countrydictunitedpopulation
2条回答

你每次都在写已经存储在你的密钥下的数据,如果有的话会丢失以前的数据

(加上第一个语句cities['white plains'] = {'white plains'}是不正确的:您将key与包含key值的set相关联,好吧,这不是问题,因为您在:)之后重写了它)

你需要做的是:

cities['white plains']['attraction'] = 'kensico dam'

或者

^{pr2}$

后者的优点是能够一次添加多个键。在

注意:如果密钥不存在并且您想让它正常工作,您必须使用collections.defaultdict,方法是声明cities,如下所示:

import collections
cities = collections.defaultdict(dict)

因此,当键不存在时,将创建一个字典,而不是得到KeyError异常。在

你需要

cities['white plains'] = {
  'country': 'united states',
  'population':'60 thousand',
  'attraction': 'kensico dam'
}

相关问题 更多 >