在列表中查找子列表

时间:2019-07-06 13:04:50

标签: python list sublist

我有一个列表

lst = [4,5,2,1,5,7,5,8,3,2]

,我需要找到第一个元素和最后一个元素为5的子列表。结果应该是:

res = [5,2,1,5,7,5]

最优雅的方式(如果可能的话,采用单线)是什么?

1 个答案:

答案 0 :(得分:1)

我想到的唯一解决方案是从前到下直到 您的前端和后端条件都得到满足。

这是您需要做的事情。

lst = [4, 5, 2, 1, 5, 7, 5, 8, 3, 2]
lst_size = len(lst)
lst_size = lst_size - 1
while(1):
    if(lst[0] != 5):
        lst.pop(0)
        lst_size = lst_size - 1
    if(lst[lst_size] != 5):
        lst.pop(lst_size)
        lst_size = lst_size - 1
    else:
        break
print(lst)
  

[5、2、1、5、7、5]