我指的是模块中的OrderedDictcollections,它是一个有序字典.
如果它具有可订购的附加功能,我意识到这可能通常不是必要的,但即便如此,是否有任何缺点?它慢了吗?它缺少任何功能吗?我没有看到任何遗漏的方法.
简而言之,为什么我不应该总是使用它而不是普通的字典呢?
我有一个嵌套OrderedDict我想转换成一个dict.dict()在它上面应用显然只会转换最后一个条目的最外层.
from collections import OrderedDict
od = OrderedDict(
[
(u'name', u'Alice'),
(u'ID', OrderedDict(
[
(u'type', u'card'),
(u'nr', u'123')
]
)),
(u'name', u'Bob'),
(u'ID', OrderedDict(
[
(u'type', u'passport'),
(u'nr', u'567')
]
))
]
)
print(dict(od))
Run Code Online (Sandbox Code Playgroud)
输出:
{u'name': u'Bob', u'ID': OrderedDict([(u'type', u'passport'), (u'nr', u'567')])}
Run Code Online (Sandbox Code Playgroud)
是否有直接的方法来转换所有出现的?