在python中的循环中访问字典的元素

时间:2018-08-28 22:25:55

标签: python python-3.x list dictionary iteration

我有一个数据集:

city_names_lst = 
  [{"cities":
     {"city":
         {"name":"New York",
          "population": "18mln",
          "suburbs": 
             {"s_name": "Brooklyn",
              "population":"9mln"},
             {"s_name": "Queens",
              "population": "9mln"}}},
     {"city":
         {"name":"Washington DC",
          "population":"10mln",
         "suburbs": 
             {"s_name": "Maryland",
              "population": "5mln"},
             {"s_name": "Northern Virginia",
              "population":"5mln"}}},
      ...}]

我需要遍历整个列表并访问“名称”键。

我的代码是:

city_names = []

for x in city_names_list:
    city_names = x['city']['name']

但是,它仅获取第一个城市名称。 如何获得所有这些?

1 个答案:

答案 0 :(得分:4)

你很近。 追加到列表中,而不是重新分配其名称:

city_names = []

for x in city_names_list:
    city_names.append(x['city']['name'])

我假设您的数据并没有像示例数据集中那样全部嵌套在“城市”键后面。