在python中使用.format打印字典

时间:2015-12-01 02:20:28

标签: python dictionary

我有以下格式的字典: -

d = { 'x' : 1, 'y' : 2, 'z' : 1, 'a' : 3 }

如何以下列格式将其打印到shell: -

 alphabet      number
----------------------
    a            3
    y            2
    x            1
    z            1

我将字典打印到shell的代码: - (忽略打印'字母,'数字'和' -----')

for key,value in sorted(d.items()):
    print("{:>10}{:>20}".format(key,value))

所以我知道如何使用.format方法打印字典,但是查看所需的输出我无法理解如何通过最大值将字典打印到最小值。

有什么建议吗?!

2 个答案:

答案 0 :(得分:2)

像这样迭代:

for k in sorted(d, key=d.get, reverse=True):
    print("{:>10}{:>20}".format(k, d[k]))

答案 1 :(得分:1)

会是,

>>> d = { 'x' : 1, 'y' : 2, 'z' : 1, 'a' : 3 }
>>> for i,j in sorted(d.items(), key=lambda x: x[1], reverse=True):
    print("{:>10}{:>20}".format(i,j))


         a                   3
         y                   2
         x                   1
         z                   1
>>>