在CPython中如何实现string.find?
问题内容:
我想知道是否对字符串的“查找”方法是通过线性搜索实现的,或者python是否做了更复杂的事情。Python文档没有讨论实现细节,因此http://docs.python.org/library/stdtypes.html没有帮助。有人可以指出相关的源代码吗?
问题答案:
关于实施的评论如下:
快速的搜索/计数实现,基于boyer-moore和horspool之间的混合,顶部还有一些花哨的信息。
有关更多背景信息,请参见:http :
//effbot.org/zone/stringlib.htm
-
https://github.com/python/cpython/blob/master/Objects/stringlib/fastsearch.h#L5