计算字符串中子字符串长度n(未给定)的x次出现次数

2024-09-30 10:28:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我无法得到字符串中n长度的子字符串的出现次数。例如,如果字符串是

CCCATGGTtaGGTaTGCCCGAGGT

n是

^{pr2}$

输出必须类似于:

'CCC' : 2, 'GGT' :3

但不能把所有的字符串都放在列表的前面

代码:

def get_all_n_repeats(n,sq_list):
    reps={}
    for i in sq_list:
        if not i:
            continue
        else:   
            for j in i:
                ........#Here the code I want to do#......                  
return reps

Tags: 字符串代码in列表forgetdefsq
3条回答

一个非常明确的解决方案:

^{1}$

使用Counter

^{1}$

一个非常简单的解决方案:

from collections import Counter

st = "CCCATGGTtaGGTaTGCCCGAGGT"
n = 3

tokens = Counter(st[i:i+n] for i in range(len(st) - n + 1))
print tokens.most_common(2)

在你决定了它成为一个辅助函数之后。

相关问题 更多 >

    热门问题