我试图对一个dict的值进行排序,其中的值是一个dict,其中的值是两个整数的list,我试图按照list的第一个整数对内部dict中的行进行排序。
这是dict的值
{'EQUITY': {'CA': [15, 20], 'US': [25, 30]}, ... }在这里,'US‘行应该在排序后出现在'CA’行之前。
这就是我目前正在尝试的:
dict(sorted(data.items(), key=lambda item: item[1][ ?? ], reverse=True))
我应该如何从这里索引到内部数据集?
提前谢谢你的帮助。
发布于 2022-07-30 20:31:14
你快到了。尝试以下操作,它使用了dict和带有sorted参数的key参数:
dct = {'EQUITY': {'CA': [15, 20], 'US': [25, 30]}, 'FUTURE': {'CA': [5, 5], 'US': [10, 2]}}
output = {k: dict(sorted(d.items(), key=lambda item: item[1][0], reverse=True)) for k, d in dct.items()}
print(output)
# {'EQUITY': {'US': [25, 30], 'CA': [15, 20]}, 'FUTURE': {'US': [10, 2], 'CA': [5, 5]}}在这里,每个item of d.items()都是一个元组,类似于('CA', [15, 20])。因此,要按15进行排序,需要item[1][0]。
https://stackoverflow.com/questions/73178764
复制相似问题