有什么方法可以计算另一个字符串中重叠的字符串吗?
Any way to count overlapped strings within another string?
计算两个字符串之间相同重叠字符的索引(位置)的简单方法是什么?
def overlap(string1, string2):
count = 0
for i in range(0,len(string1)-len(string2)+1):
if string2 in string1[i:i+len(string2)]:
count = count +1
return count
我意识到我的功能存在一些问题。有人可以指出并解释吗?那会很有帮助!
样本:
overlap('abcb','dbeb') #output >>> 2, not 4
overlap('','winter') #output >>> 0.
由于字符串可以有不同的长度,所以使用最小长度。然后使用数组索引逐个字符地比较它们。概念上:
def overlap(string1, string2):
count=0
for i in range(min(len(string1),len(string2))):
if string1[i] == string2[i]:
count += 1
return count
您可以使用 zip
内置函数来实现它(请参阅 python 文档)。
计算两个字符串之间相同重叠字符的索引(位置)的简单方法是什么?
def overlap(string1, string2):
count = 0
for i in range(0,len(string1)-len(string2)+1):
if string2 in string1[i:i+len(string2)]:
count = count +1
return count
我意识到我的功能存在一些问题。有人可以指出并解释吗?那会很有帮助!
样本:
overlap('abcb','dbeb') #output >>> 2, not 4
overlap('','winter') #output >>> 0.
由于字符串可以有不同的长度,所以使用最小长度。然后使用数组索引逐个字符地比较它们。概念上:
def overlap(string1, string2):
count=0
for i in range(min(len(string1),len(string2))):
if string1[i] == string2[i]:
count += 1
return count
您可以使用 zip
内置函数来实现它(请参阅 python 文档)。