繁体   English   中英

使用嵌套键值的总和对嵌套字典进行排序

[英]sort nested dict with sum of nested key values

所以我试图对嵌套键的值求和,并按此值对键值进行排序。 我有一个嵌套的字典,如下所示:

dict_items([('“The', {'T': 1}), ('reason', {'T': 1}), ('we', {'T': 1, 'O': 1}), ('have', {'T': 1, 'O': 1}),...

我想对与键'O''T'关联的值求和,然后将单词The , reason ... 通过对它们的每个'O''T'值求和所产生的值进行排序,以便我得到一个用单词及其值返回。

到目前为止,我有以下返回单词的计数,但不返回附加的单词:

sorted([sum(i[1].values()) for i in dct.items()], reverse=True)

我尝试了以下方法,但出现“O”的关键错误

my_word_dct = sorted(dct.items(), key = lambda x: x[1]['O'] + x[1]['T'], reverse = True)

有什么想法我哪里出错了吗?

编辑:预期的 output 将类似于:

{'we':2, 'have':2, 'The':1, 'reason':1...}

提前致谢!!

你想要 .get() function 以防你的字典没有问题的关键。

x[1].get('O',0) + x[1].get('T',0)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM