打印普通字典的语法是
{'a': 1, 'c': 3, 'b': 2}
鉴于
打印 OrderedDict 的语法是
OrderedDict([('a', 1), ('b', 2), ('c', 3)])
有什么方法可以以普通字典的方式打印/返回 OrderedDict 吗?
最佳答案
在您自己的 OrderedDict
类中使用自定义 __str__
方法;在自定义方法中,您可以构建您想要的字符串:
from collections import OrderedDict
class MyOrderedDict(OrderedDict):
def __str__(self):
return "{%s}" % ", ".join([repr(k)+": "+str(v) for k, v in self.iteritems()])
d = MyOrderedDict([('a', 1), ('b', 2), ('c', 3)])
关于python - 普通字典和 OrderedDictonary 的语法差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40956099/