哪些原生的Python模块是用C语言编写的?

5

我打算用Python写一个小型文本编辑器。因此,我需要一个快速的字符串操作/文本处理库,最好是用C语言编写的,以提高性能。

我如何知道哪些Python模块在底层是用C语言编写的?


获取Python源代码并查看!可以肯定的是,所有语言字符串基元都是本地代码。对于编辑除小文件以外的所有内容,数据结构往往比字符串基元更重要。我会花时间研究这一点,而不是字符串操作。 - Gene
你为什么认为“用C语言编写”就意味着“快速”?当然可能是快的,但无论用哪种语言编写,都有可能非常慢。 - user405725
http://hg.python.org/cpython/file/f17647ce8f8a - Elazar
几乎所有的系统功能(文件访问、网络等) - Justin Meiners
1个回答

5

正如Gene所推荐的,最好的方法是查看源代码并找出哪个模块是用C实现的。

您可以检查__file__模块属性 :

>>> import math
>>> print(math.__file__)
/usr/lib/python2.7/lib-dynload/math.so

在这个例子中,已经加载了一个.so文件,因此该模块是用编译语言实现的(很可能是C语言)。

Python使用其他编译成.so文件的语言吗? - Kevin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接