如何解决理解对字典进行排序并返回超过阈值的一定数量的值的键
我已经弄懂了我的理解力,并使它可以用于返回已排序列表的键。所以我目前正在返回具有最低值的前X个键。我不太确定如何对此进行规定,使其值高于阈值。
coin_loss_dict = {'ETH': -1.25,'BTC': -5.92,'ETC': -2.50,'OMG': -0.75}
x = -3.5
main_list = ([i[0] for i in sorted(coin_loss_dict.items(),key=lambda x:x[1],reverse=True)[:2]])
我不确定该如何适应它,但是我希望它采用高于阈值(x)的2个值。我已经看到dict.items()之后> = x的位置,但这似乎对我不起作用。
main_list = ([i[0] for i in sorted(coin_loss_dict.items() >= x,reverse=True)[:2]])
我收到一个不错的错误,告诉我在dict_items实例和float实例之间不能这样做。
TypeError: '>=' not supported between instances of 'dict_items' and 'float'
我将不胜感激。我知道这种理解并不是最美丽的方法,但是它可以满足我的需求,但我似乎无法接受的门槛除外。
解决方法
尝试一下:
coin_loss_dict = {'ETH': -1.25,'BTC': -5.92,'ETC': -2.50,'OMG': -0.75}
x = -3.5
main_list = ([i[0] for i in sorted(coin_loss_dict.items(),key=lambda x:x[1],reverse=True) if i[1] >= x])
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。