Python排序字典

Python排序字典,python,Python,我在使用这条蟒蛇时遇到了一些问题。我正在尝试按字母顺序对字典进行排序,从最小到最大按值排序,从最大到最小按值排序。我该怎么做 注意:我无法使最大到最小工作 stocks = { 'GOOG': 520.24, 'FB': 331.28, 'XMZN': 89.72, 'APPL': 112.31 } # for min to max print(sorted(zip(stocks.values(), stocks.keys()))) # for alphabe

我在使用这条蟒蛇时遇到了一些问题。我正在尝试按字母顺序对字典进行排序,从最小到最大按值排序,从最大到最小按值排序。我该怎么做

注意:我无法使最大到最小工作

stocks = {
    'GOOG': 520.24,
    'FB': 331.28,
    'XMZN': 89.72,
    'APPL': 112.31
}

# for min to max
print(sorted(zip(stocks.values(), stocks.keys())))

# for alphabetically
print(sorted(zip(stocks.keys(), stocks.values())))

# for max to min
print(sorted(zip(stocks.values(), stocks.keys(), reverse))

您可以使用[:-1]反转列表

输出:

[(520.24, 'GOOG'), (331.28, 'FB'), (112.31, 'APPL'), (89.72, 'XMZN')]

关键字参数必须给定一个值,否则标识符将用作名称

print(sorted(zip(stocks.values(), stocks.keys(), reverse=True))

您可以简单地执行此操作,而不是zip和all

向上投票,但可能重复:p可能重复
print(sorted(zip(stocks.values(), stocks.keys(), reverse=True))
stocks = {
'GOOG': 520.24,
'FB': 331.28,
'XMZN': 89.72,
'APPL': 112.31
}

print sorted(stocks.items(),key=lambda x:x[1],reverse=True)