【发布时间】:2011-11-27 14:37:27
【问题描述】:
有没有关于 Python 的字符串函数是如何在 Python 中实现的文档?
我知道 str 是一个内置模块,所以它的功能是用 C 实现的。 但是无论如何都没有代码吗?在 Pypy 中怎么样?从我目前阅读的内容来看,他们已经在 Python 本身中重新实现了许多内置模块。
例题:字符串的split方法是如何实现的? (没有写我自己的实现)
编辑:我不是在寻找用 C 编写的实现(这是 Python/CPython 源代码中的默认实现)。
【问题讨论】:
-
Python(包括PyPy)是开源的:要了解实现,就看实现。
-
PyPy 在 Python 中实现了一些内置函数。但大多数都是用 RPython 编写的,它可能比 Python 实现更底层,也可能不会。
-
Python (CPython) 的默认实现使用 C 函数作为字符串函数,正如我在原始帖子中提到的那样。我正在寻找的是这些函数的 Python 实现。
-
@delnan RPython 与 Python 代码的兼容性如何。我读过它是一个子集——这是否意味着 Python 会完全理解它?例如,我可以解析 RPython 代码的 AST 吗?
-
是的,所有的 RPython 程序都是有效的 Python 程序(这对测试有很大的影响)。我的观点是,由于限制,它们不一定是惯用的或可以理解的。但仔细想想,RPython 字符串至少有一些内置方法(即 RPython 程序不需要定义它们,它们是内置在 RPython 中的),所以也许 PyPy 的 Python 字符串实现主要调用这些方法。
标签: python string implementation pypy