首页 > 解决方案 > 如何用(x,y)对拆分列表

问题描述

基本上我有一个便宜的基于文本的ticketek系统作为学校项目,我试图让用户查看他们的购物车,我使用了 list(collection.count(order_list).items())并以类似这样的输出结束[(ticket1, 8), (ticket2, 4), (ticket3, 3)] 但是我想写一个类似的打印语句: 8x 票 1... 但这需要我将它们分开。

我的预期结果将采用以下格式:[[ticket1, 8],[ticket2, 6],[ticket3, 2]

标签: pythonlistsplit

解决方案


您不需要将结果转换为Counter列表:

result = [('ticket1', 8), ('ticket2', 4), ('ticket3', 3)]

for ticket, number in result:
    print("{}x {}".format(number, ticket))

但是,如果您坚持要这样做,这里有一个简单的方法:

list(map(list, result))
=> [['ticket1', 8], ['ticket2', 4], ['ticket3', 3]]

推荐阅读