4

str.count我在阅读文档时遇到了 Python函数。我似乎找不到关于函数内部工作的任何好的解释。使用什么算法来计算字符串中子字符串的数量?它实际上是如何工作的?

4

2 回答 2

6

在https://github.com/python/cpython/blob/master/Objects/stringlib/fastsearch.h研究源代码

文件顶部的注释解释了这一点:

快速搜索/计数实现,基于 boyer-moore 和 horspool 之间的混合,顶部还有一些花里胡哨。有关更多背景信息,请参阅:http ://effbot.org/zone/stringlib.htm

于 2013-05-29T07:00:18.607 回答
-2

我尝试使用 Python 编写一个简单的代码来计算单词列表中有多少个“r”:

fruit = ["apple", "banana", "rrrrrrrrr", "cherry", "berrada"]
y=0
for j in range(len(fruit)):
  x = fruit[j].count("r")
  y = y + x
  
print(y)

它可能会帮助您了解计数功能的工作原理。

于 2021-03-31T20:36:45.020 回答