gpt4 book ai didi

python - repr() of dict, but ordered

转载 作者:太空宇宙 更新时间:2023-11-04 10:13:51 25 4
gpt4 key购买 nike

我想要一种简单的方法来获取 repr() 之类的字典字符串按键排序

my_print(dict(a=1, b=2, c=3)) -> "{'a': 1, 'b': 2, 'c': 3}"

我的解决方案:

import collections
print repr(collections.OrderedDict(sorted(dict(a=1, b=2, c=3).items())))

... 不起作用。这里是错误的输出:

OrderedDict([('a', 1), ('b', 2), ('c', 3)])

如何实现my_print()

这不是一个解决方案,因为字典在 Python 中没有排序:

print dict(a=1, b=2, c=3)

最佳答案

Python 3.7 中的标准字典是 going to be ordered , 在 CPython 3.6 中,dictordered due to an implementation detail ,因此以下内容适用于 Python 3.7,也可能适用于您的 Python 3.6:

def sorted_dict_repr(d):
return repr(dict(sorted(d.items())))

关于python - repr() of dict, but ordered,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36571585/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com