从Python中的元组列表中获取元组的所有第一个元素

2024-04-28 04:15:28 发布

您现在位置:Python中文网/ 问答频道 /正文

Input: 
orders = [[('Fries', 9)], [('Burger', 6), ('Milkshake', 2), ('Cola', 2)], [('Cola', 2), ('Nuggets', 3), ('Onion Rings', 5)], [('Fries', 9)], [('Big Burger', 7), ('Nuggets', 3)]]

Expected Output:  
orders = [['Fries'], ['Burger', 'Milkshare', 'Cola'], ['Cola', 'Nuggets', 'Onion Rings'], ['Fries'], ['Big Burger', 'Nuggets']]

我的尝试:

 for i, order in enumerate(orders):
        for j,item in enumerate(order):
            orders[i][j] = item[0]

工作正常。但是有没有更直观/更简单/更快/更酷的方法


Tags: inforinputorderitemburgerordersbig
3条回答
output = [[item[0] for item in order] for order in orders]

display(output)

[['Fries'],
['Burger', 'Milkshake', 'Cola'],
['Cola', 'Nuggets', 'Onion Rings'],
['Fries'],
['Big Burger', 'Nuggets']]

给你:

output = [[item[0] for item in order] for order in orders]

或者干脆[[item[0] for item in order] for order in orders]

相关问题 更多 >