В настоящее время у меня есть очень длинная последовательность в файле, и я хочу разбить эту последовательность на меньшие подпоследовательности, но я бы хотел, чтобы каждая подпоследовательность имела перекрытие от предыдущей последовательности и помещала их в список.Вот пример того, что я имею в виду:
(извиняюсь за загадочную последовательность, все это на 1 строке)
file1.txt
abcdefessdfekgheithrfkopeifhghtryrhfbcvdfersdwtiyuyrterdhcbgjherytyekdnfiwytowihfiwoeirehjiwoqpft
list1 = ["abcdefessdfekgheithrfkopeifhght", "fhghtryrhfbcvdfersdwtiyuyrterdhc", "erdhcbgjherytyekdnfiwyt", "nfiwytowihfiwoeirehjiwoqpft"]
В настоящее время я могу разбить каждую последовательность на меньшие подпоследовательности без перекрытийиспользуя следующий код:
def chunks(seq, n):
division = len(seq) / float (n)
return [ seq[int(round(division * i)): int(round(division * (i + 1)))] for i in xrange(n) ]
в вышеприведенном коде n указывает, на сколько подпоследовательностей будет разбит список.
Я думал о том, чтобы просто схватить концы каждой подпоследовательности и простообъединять их до конца элементов в списке путем жесткого кодирования ... но это было бы неэффективно и сложно.Есть ли простой способ сделать это?
на самом деле это было бы более 100 символов, которые я бы потребовал, чтобы были перекрыты.
Спасибо, ребята