我有一份水果清单:
fruit = [[['apples', '2'], ['apples', '7']], [['banana','5'], ['banana','6'], ['banana','3'], ['banana','9'], ['banana','1']], [['grapes','10'], ['grapes','0'], ['grapes','7']]]
正如您在我的购物清单上看到的,它是一个嵌套的清单,其中相同的项目被分组在一个清单中。我想做的是:
fruit[x][0]
开始),直到水果的最后三个条目保留。例如,这将对上述列表的'banana'
执行,因为'banana'
的条目数是5,因此前两个条目(['banana','5'], ['banana','6']
)将被删除,而['banana','3'], ['banana','9'], ['banana','1']
将保留。你知道吗如果操作正确,生成的代码将是:
fruit = [[['apples', '2'], ['apples', '7']], [['banana','3'], ['banana','9'], ['banana','1']], [['grapes','10'], ['grapes','0'], ['grapes','7']]]
我该怎么做?我曾尝试使用for
循环检查条目数,但不知道如何删除列表中的内容。你知道吗
谢谢:)
可以将列表理解与
if
/else
语句结合使用,如下所示:输出
循环浏览主列表,将每个项目列表替换为其最后三个对象(这对已短于或等于3个对象的列表没有任何作用):
或者,以理解的形式:
相关问题 更多 >
编程相关推荐