0

我目前有以下输出:

{ ('JAIL','A'): 20, ('BAIL','J'): 50, ('ZERO','D'): 80, ('LIME', 'A'): 24 }

我想按字典中元组的第一个字符串对字典进行排序。然后我想显示如下输出:

BAIL -> J 50
JAIL -> A 20
LIME -> A 24
ZERO -> D 80
4

2 回答 2

3

你可以使用sorted方法

myDict = { ('JAIL','A'): 20, ('BAIL','J'): 50, ('ZERO','D'): 80, ('LIME', 'A'): 24 }
for l, v in sorted(myDict.items()):
    print "{} -> {} {}".format(l[0], l[1], v)

输出

BAIL -> J 50
JAIL -> A 20
LIME -> A 24
ZERO -> D 80
于 2013-11-09T05:36:13.813 回答
1

使用sorted和元组解包:

>>> myDict = {('JAIL','A'):20, ('BAIL','J'):50, ('ZERO','D'):80, ('LIME','A'):24}
>>> for (word, ch), value in sorted(myDict.items()):
...     print('{} -> {} {}'.format(word, ch, value))
...
BAIL -> J 50
JAIL -> A 20
LIME -> A 24
ZERO -> D 80
于 2013-11-09T05:47:17.400 回答