Почему re.findall не конкретен в поиске триплетных элементов в строке. питон

Итак, у меня есть четыре строки кода

seq= 'ATGGAAGTTGGATGAAAGTGGAGGTAAAGAGAAGACGTTTGA'



OR_0 = re.findall(r'ATG(?:...){9,}?(?:TAA|TAG|TGA)',seq)  

Позвольте мне объяснить, что я пытаюсь сделать в первую очередь. , , Я'Мне жаль, если это сбивает с толку, но я постараюсь объяснить это.

Так что я'ищу последовательности, которые начинаются с 'ATG» с последующими единицами из 3 любого слова char [например, 'GGG ''GTT ''TTA»и т. д.], пока не встретитсяТАА «»ТЕГ' или же 'TGA» Я также хочу, чтобы они были длиной не менее 30 символов. , , отсюда {9,}?

Это работает в некоторой степени, но если вы заметили всл что там естьATG GAA GTT GGATGA AAG TGG AGGТАА AGA GAA GAC GTTTGA

Так что в этом случае, он должен найтиATGGAAGTTGGATGA» если это начинается с первогоATG» и идет до следующегоТАА «»ТЕГ' или же 'TGA»

ОДНАКО, когда вы запускаете строку кода OR_0, она выплевывает всю строку seq. Я нене знаю, как сделать так, чтобы только рассмотреть первыйТАА «»ТЕГ' или же 'TGA» с последующим первымATG»

Если 'ATG» сопровождается другимATG» при чтении в единицах 3 это нормально, оно НЕ должно начинаться заново, но если оно встречаетТАА «»ТЕГ' или же 'TGA» при чтении в единицах 3 он должен остановиться.

Мой вопрос,почему re.findall находит самую длинную последовательностьATG»ххх-xxx- [»ТАА «»ТЕГ' или же 'TGA»] вместо первого появленияТАА «»ТЕГ' или же 'TGA» после ATG, разделенных символами слова в единицах 3?

Еще раз, я прошу прощения, если это сбивает с толку, но это путается с несколькими наборами данных, которые я основал на этой исходной строке текста, и я 'я пытаюсь выяснить, почему

Ответы на вопрос(4)

Ваш ответ на вопрос