7

我有字典

d = {'a':3, 'b':7, 'c':8}

我想知道如何反转字典的顺序以使其看起来像这样:

d = {3:'a', 7:'b', 8:'c'}

我想这样做,而不仅仅是这样写。有没有办法我可以使用第一个字典来获得新的结果?

4

2 回答 2

12

是的。您可以调用items字典以获取(键,值)对的列表。然后您可以反转元组并将新列表传递给dict

transposed = dict((value, key) for (key, value) in my_dict.items())

Python 2.7 和 3.x 也有字典解析,这使它更好:

transposed = {value: key for (key, value) in my_dict.items()}
于 2013-04-04T05:25:55.427 回答
1
transposed = dict(zip(d.values(), d))
于 2013-04-04T06:08:18.477 回答