有几次,当我需要根据某些条件从列表的两端删除一些元素时,我遇到了一个问题。例如,假设我想从列表的两端删除元素,q
一旦遇到第一个 0(包括第一个 0)就从位置开始。
例子:
mylist = [1,1,0,1,0,1,2,3,1,5,1,3,1,0,2]
应该变成:
[1,2,3,1,5,1,3,1]
如果我们取q
7。所以,我们去第 7 个元素,开始向左走,当遇到第一个 0 时,我们会记住该索引i0
并将其切断mylist = mylist[i0+1:]
。对右侧重复相同的步骤。
使用这个逻辑,我用两个循环来完成,就像上面描述的那样。但是好像有点绕。有没有更简单的方法来处理这样的任务?