从字符串中拆分给定长度的子串的简单方法

时间:2015-06-10 18:10:38

标签: python string

我有一个34-mer字符串,如

ATGGGGTTTCCC...CTG

我希望在此字符串中获得所有可能的6-mer子串。你能建议一个很好的方法吗?

1 个答案:

答案 0 :(得分:1)

假设它们必须是连续的,您可以在列表推导中使用切片

>>> s = 'AGTAATGGCGATTGAGGGTCCACTGTCCTGGTAC'
>>> [s[i:i+6] for i in range(len(s)-5)]
['AGTAAT', 'GTAATG', 'TAATGG', 'AATGGC', 'ATGGCG', 'TGGCGA', 'GGCGAT', 'GCGATT', 'CGATTG', 'GATTGA', 'ATTGAG', 'TTGAGG', 'TGAGGG', 'GAGGGT', 'AGGGTC', 'GGGTCC', 'GGTCCA', 'GTCCAC', 'TCCACT', 'CCACTG', 'CACTGT', 'ACTGTC', 'CTGTCC', 'TGTCCT', 'GTCCTG', 'TCCTGG', 'CCTGGT', 'CTGGTA', 'TGGTAC']