我有一本字典
{'a': 'first', 'b': 'second'}
但是,我需要字典的顺序不同:
{'b': 'second', 'a': 'first'}
做这个的最好方式是什么?
字典 没有顺序 。因此,没有办法做到这一点。
如果您使用的是python2.7 +,则可以使用collections.OrderedDict-在这种情况下,您可以使用检索项目列表.items(),然后将其反向并OrderedDict从反向列表中创建一个新项:
collections.OrderedDict
.items()
OrderedDict
>>> od = OrderedDict((('a', 'first'), ('b', 'second'))) >>> od OrderedDict([('a', 'first'), ('b', 'second')]) >>> items = od.items() # list(od.items()) in Python3 >>> items.reverse() >>> OrderedDict(items) OrderedDict([('b', 'second'), ('a', 'first')])
如果您使用的是旧版python,则可以从http://code.activestate.com/recipes/576693/获得反向移植