我有兩個序列AAAAAAAAAGAAAAGAAGAAG,AAAGAAG。 正確答案是AAGAAG。找到兩個基因組序列中最長的子串
但是我的代碼給了AA。
還有時候兩個字符串按照AAAGAAG,AAAAAAAAAGAAAAGAAGAAG的順序排列。
這裏是我的代碼
`def longestSubstringFinder(string1, string2):
string1=string1.strip()
string2=string2.strip()
answer = ""
len1=len(string1)
len2=len(string2)
if int(len1)>1 and int(len2)>1:
for i in range(1,len1,1):
match = ""
for j in range(len2):
if len1>len2:
if i+j<len1 and (string1[i+j]==string2[i+j]):
match=str(match)+str(string2[i+j])
print(match)
else:
if len(match)>len(answer):
answer=match
match=""
elif len2>len1:
if i+j<len2 and (string1[i+j]==string2[i+j]):
match=str(match)+str(string2[i+j])
print(match)
else:
if len(match)>len(answer):
answer=match
match=""
return(answer)`
請提供一個工作的例子,人們可以複製到自己的編輯器。 – Joe
您的第二個字符串實際上是第一個字符串的一部分..它從第一個字符串的末尾結束3個字符 – AK47
[在兩個字符串之間查找公共子字符串]可能的重複(https://stackoverflow.com/questions/18715688/find -common-substring-between-two-strings) –