У меня есть список, который идет как это:Создание меньшего списка из существующего списка
>>> list1 = ['Mary','had','a','little','lamb','which','was','very','naughty']
У меня было требование, чтобы создать еще один список (list2
) из list1
, который создается итерация list1
и нахождения элемент маленький, а затем добавление немного и каждый элемент, который следует за , немного до list2
.
Немного прочитал и нашел, что оттуда от itertools было сделано только для моего требования.
>>> from itertools import dropwhile
>>> list2 = list(dropwhile(lambda l: 'little' not in l, list1))
>>> list2
['little', 'lamb', 'which', 'was', 'very', 'naughty']
Работает именно так, как я хочу.
Однако, теперь у меня есть требование, чтобы указать конечный элемент как well.So я хочу список элементов из немного к очень оба включительно следующим образом:
>>>list3
['little', 'lamb', 'which', 'was', 'very']
Как сделать что с подобным подходом?
Вы должны серьезно определить условия пограничной линии, потому что вы получаете ответы, которые могут взорваться несколько раз. Всегда ли гарантировано присутствие элементов? Они происходят только один раз каждый? Что произойдет, если нет. Гарантирован ли заказ? Что должно произойти, если 'very' до« непослушного »... – luk32
@ luk32 ... я понимаю ваши проблемы, но я позаботился об этих условиях пограничной линии. Мое намерение состояло в том, чтобы получить логику, когда все эти граничные условия позаботились .. – Amistad