cja*_*gir 40 python string count
在我的代码中:
>> s = 'abacaba'
>> s.count('aba')
>> 2
Run Code Online (Sandbox Code Playgroud)
对于上面的代码,我得到正确答案,因为'aba'在字符串中出现2次s.
但对于以下情况:
>> s = 'www'
>> s.count('ww')
>> 1
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我期待s.count('ww')将返回2.但它回来了1.
为什么?
mut*_*lis 34
string.count(s, sub[, start[, end]]):返回字符串s [start:end]中substring sub 的(非重叠)出现次数.开始和结束的默认值以及负值的解释与切片的默认值相同.
来源:https://docs.python.org/2/library/string.html
小智 9
试着想一想:
在这个词中:"abacaba",你看到多少不重叠的 "aba"字样?我看到2.而且我也看到了"c".
在这个词中:"www" 你看到多少不重叠的 "ww"字?我看到1.而且我也看到了"w".
为了更好的解释,请考虑在您看到时删除实例.
对于"abacaba",您会看到"aba"并将其删除.现在有"caba",你再次看到"aba"并将其删除.现在你只得到"c".你看两次"aba".对于"www"也是一样,你看一次"ww"并删除它.现在你只看到"w".你曾经见过"ww"一次.
这说得通.