Python:打印不完整

rol*_*ton 2 python printing sorting list

我有以下问题.我创建了以下列表:

usinlist = [['strawberries',    2.05,   'rosales'],
            ['pineapples',      2.05,   'poales'],
            ['bananas',         2.05,   'zingiberales'],
            ['oranges',         2.05,   'sapindales'],
            ['apples',          2.05,   'rosales'],
            ['broccoli',        2.05,   'rosales'],
            ['cauliflower',     2.05,   'rosales'],
            ['cucumber',        2.05,   'cucurbitales'],
            ['lettuce',         2.05,   'asterales'],
            ['sprouts',         2.05,   'rosales']]
Run Code Online (Sandbox Code Playgroud)

我需要打印此列表并使用3元素usinlist [x] [x] [2]按字母顺序对其进行排序.我现在要排序的代码如下:

print('\n'.join('{}: {}'.format(*k) for k in sorted(usinlist, key=lambda k: (k[2], k[0], k[1])))) 
Run Code Online (Sandbox Code Playgroud)

按字母顺序对种类/类型[2]进行排序后,它按字母顺序对水果/蔬菜名称进行排序,但出现的问题是它排序,但不打印列表完成.

输出如下:

lettuce: 2.05
cucumber: 2.05
pineapples: 2.05
apples: 2.05
broccoli: 2.05
cauliflower: 2.05
sprouts: 2.05
strawberries: 2.05
oranges: 2.05
bananas: 2.05
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉我这里有什么问题:)?

Hyp*_*eus 5

您的格式字符串中只有两个占位符.尝试使用

print('\n'.join('{}: {} ({})'.format(*k) for k in sorted(usinlist, key=lambda k: (k[2], k[0], k[1]))))
Run Code Online (Sandbox Code Playgroud)

或者你需要的任何格式.