python – 递归地按键对嵌套的OrderedDict进行排序
发布时间:2020-11-18 07:29:49 所属栏目:Python 来源:互联网
导读:假设orig是一个包含普通字符串:字符串键值对的OrderedDict,但有时该值可能是另一个嵌套的OrderedDict. 我想按键,按字母顺序(升序)对orig进行排序,并以递归方式进行. 规则: 假设键字符串是不可预测的 假设嵌套可以无限发生,例如级别1-50都具有字符串,Ordered
假设orig是一个包含普通字符串:字符串键值对的OrderedDict,但有时该值可能是另一个嵌套的OrderedDict. 我想按键,按字母顺序(升序)对orig进行排序,并以递归方式进行. 规则: >假设键字符串是不可预测的 需要协助排序算法: import string from random import choice orig = OrderedDict(( ('a',choice(string.digits)),('b',('c',('special',OrderedDict(( ('a',))) )) sorted_copy = OrderedDict(sorted(orig.iteritems(),...)) self.assertEqual(orig,sorted_copy) 解决方法编辑:对于python 3.6,@ pelson的答案更好就像是: def sortOD(od): res = OrderedDict() for k,v in sorted(od.items()): if isinstance(v,dict): res[k] = sortOD(v) else: res[k] = v return res (编辑:4S站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- python – 如何访问`pip –user`安装的软件包?
- django – 在Bootstrap中激活点击的选项卡
- 比较两个窗口路径,一个包含代字号,在python中
- python – Scipy稀疏 – 距离矩阵(Scikit或Scipy)
- flask:wsgi-middleware vs before_和after_request()
- Python+pandas计算数据相关系数的实例
- django-forms – 如何使用modelformset_factory创建一个空的
- python – joblib和pickle的不同用例是什么?
- 根据其属性为python对象生成唯一的ID
- python – OrderedDict:也是有序的值?