本文介绍了Python:计算字符串中的重叠子字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
假设我有 string = 'hannahannahskdjhannahannah'
并且我想计算字符串 hannah
出现的次数,我不能简单地使用 count,因为只有在每种情况下计算子字符串一次.
Say I have string = 'hannahannahskdjhannahannah'
and I want to count the number of times the string hannah
occurs, I can't simply use count, because that only counts the substring once in each case.
即.
我希望返回 4
但仅在使用 string.count('hannah')
2/p>
I am expecting to return 4
but only returns 2
when I run this in pyCharm with string.count('hannah')
推荐答案
您可以使用正在运行的索引来获取下一个事件:
You could use a running index to fetch the next occurance:
bla = 'hannahannahskdjhannahannah'
cnt = 0
idx = 0
while True:
idx = bla.find('hannah', idx)
if idx >= 0:
cnt += 1
idx += 1
else:
break
print(cnt)
给出:
>> 4
这篇关于Python:计算字符串中的重叠子字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!