使用2个字符串指示符迭代计数匹配项

2024-03-29 06:28:48 发布

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

我有两条线:

string 1 = 'ATCGATCG'
string 2 = 'ATCGATCG'

我想确定这两个字符串的哪个部分匹配,从第一个字符开始,然后逐步建立。为此,我使用下面的代码,一次切片一个字符:

('A', 'AT', 'ATC', 'ATCG', 'ATCGA', 'ATCGAT', 'ATCGATC', 'ATCGATCG')

有没有一种方法让它来计算字符串1和2所组成的切片之间的匹配,看看它们是否完全匹配打印是,如果不是打印否。我很难确定如何为每个切片完成它。你知道吗

for i in range(0, len(string1)):
    print string1[0:i]

    for i in range(0,len(string2)):
        print string2[0:i]

Tags: 字符串代码inforstringlen切片range
1条回答
网友
1楼 · 发布于 2024-03-29 06:28:48

只要数一数你需要的比赛,就可以决定你需要决定什么:

s1 = "ATCGATCG"
s2 = "ATCGATCGFOOBAR"

counter = 0

for c1, c2 in zip(s1, s2):
  if c1 == c2: 
    counter += 1
  else:
    break

print "String share the longest common prefix of length %d: %s" % (counter, s1[:counter])

String share the longest common prefix of length 8: ATCGATCG

相关问题 更多 >