【发布时间】:2020-12-14 19:55:40
【问题描述】:
def DNAalg(STR, seq):
count = 0
maximum = 0
for i in range(len(seq)):
if seq[i:i+len(STR)] == STR:
for k in range(i, len(seq), len(STR)):
if seq[k:k+len(STR)] == STR:
count += 1
else:
if count>maximum:
maximum = int(count)
count = 0
break
return maximum
seq = "GCTAAATTTGTTCAGCCAGATGTAGGCTTACAAATCAAGCTGTCCG...... many more letters"
STR = "AGATC"
print(DNAalg(STR,seq))
我想在一个长字符串(seq)中找到一个连续字符串(STR)的最大出现次数。
我尝试使用我的代码进行迭代,直到遇到这样的字符串,然后从那里执行另一个循环,其中包含字符串长度的步骤以查找更多并计数,直到我没有遇到另一个。我看不出我的逻辑有任何缺陷。感谢您使用我的代码或替代方案解决该问题的任何帮助。
【问题讨论】:
-
请修正问题中代码的缩进。
-
复制粘贴不能正常工作,我修复了缩进。
-
如果您没有发现自己的逻辑有任何缺陷,是什么促使您创建了这篇文章?
-
代码不工作,我不明白为什么。这就是我创建该帖子的原因。
标签: python-3.x string function