2016-08-01 39 views
0

我想找到一个快速的算法来计算在一个字符串中使用Python找到一个子字符串的次数。我知道这样做有一些内建功能,但他们不服务我的建议。例如,字“全日空”出现2次“香蕉”但字符串的方法计数刚刚返回1 我到目前为止的代码:什么是快速的方法来计算字符串中的子字符串使用python

s = "banana" 
sub = "ana" 
count = 0 
for i in range(4): 
    if s.startswith(sub): 
     count += 1 

如果某些人知道更好的方法,请让我知道。

回答

1

可能这样:

s = "banana" 
sub = "ana" 
count = len(s.split(sub))-1 
+1

感谢的,但它不会工作。例如,如果不是“ana”sub有“a”,那么答案就不正确。这将是4而不是3. – user24312

+0

你是对的。在这里编辑 – danielarend

相关问题