字典的字典数组?

时间:2015-07-27 15:18:22

标签: python python-3.x python-2.7 dictionary mapping

我有一系列字典看起来像这样:

[
  { 'country': 'UK', 'city': 'Manchester' },
  { 'country': 'UK', 'city': 'Liverpool' },
  { 'country': 'France', 'city': 'Paris' } ...
]

我想最终得到这样的字典:

{ 'Liverpool': 'UK', 'Manchester': 'UK', ... }

显然我可以这样做:

 d = {}
 for c in cities:
     d[c['city']] = c['country']

但是我有什么方法可以用单线图做到这一点吗?

1 个答案:

答案 0 :(得分:10)

您可以使用dict comprehension

AddItemToQueue()

或我们>>> li = [ ... { 'country': 'UK', 'city': 'Manchester' }, ... { 'country': 'UK', 'city': 'Liverpool' }, ... { 'country': 'France', 'city': 'Paris' } ... ] >>> {d['city']: d['country'] for d in li} {'Paris': 'France', 'Liverpool': 'UK', 'Manchester': 'UK'} operator.itemgetter功能:

map