我想按键,按字母顺序(升序)对orig进行排序,并以递归方式进行.
规则:
>假设键字符串是不可预测的
>假设嵌套可以无限发生,例如级别1-50都具有字符串,OrderedDicts等作为值.
需要协助排序算法:
import stringfrom random import choiceorig = 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总结
以上是内存溢出为你收集整理的python – 递归地按键对嵌套的OrderedDict进行排序全部内容,希望文章能够帮你解决python – 递归地按键对嵌套的OrderedDict进行排序所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)