Я пытаюсь вернуть логическое значение, которое дает только самое длинное «Истинное» вхождение в исходном логическом значении, и заменить более короткие «Истинные» блоки на «Ложные».Пример a = [True, True, False, True, True, True, False], я хочу вернуть [False, False, False, True, True, True, False].
я пробовал more_itertools и этокажется, есть некоторые интересные функции, но не уверен, как именно реализовать для моих целей.
a=[True, True, False, True , True, True, False]
pred = lambda x: x in {True}
p=list(mit.run_length.encode(a))
>>>
Results in: (True,2),(False,1),(True,3),(False,1)
Итак, что я хочу в итоге автоматически получить, это (False, 3), (True, 3), (False, 1).какие-либо предложения?Спасибо за вашу помощь