根据对Python字典here排序的建议,如何根据值的绝对值按排序顺序打印Python字典呢?
我试过了:
sorted(mydict, key=abs(mydict.get))
但这引发了错误:bad operand type for abs(): 'builtin_function_or_method'
abs()需要一个数字,而不是一个函数。另外,abs()是函数abs的返回值,key只是一个函数。
发布于 2017-05-14 12:41:56
您可以使用:
sorted(mydict, key=lambda dict_key: abs(mydict[dict_key]))
这使用了一个新函数(使用lambda
定义),该函数获取字典中的一个键,并返回该键处的值的绝对值。
这意味着结果将按照存储在字典中的绝对值进行排序。
https://stackoverflow.com/questions/43960420
复制相似问题