扩展Python代码 – 添加语言function

我已经在python中独自编程了4年,并且从未在编写python的C代码中进行过深入的研究。 我最近一直在研究一个涉及在该级别修改python的问题。

代码似乎非常一致,因此相对容易理解。 然而,它足够复杂,只是通过研究它如何一起工作对我来说没有意义。 当然,由于缺乏更好的资源,我没有花费太多时间或精力。 我还查看了python站点上的 文档 。 但是,它更倾向于通过模块扩展语言。

我希望找到一些简单的文档,说明解析器如何在C级工作以及如何直接扩展核心语言(添加语言function)。 面向模块的文档提供了一些关于构建类型和管理对象的方式的深刻见解,但我正在寻找更多。

那里有没有这样的文件?

本文可能会帮助您入门。 它需要来自优秀的PEP 339 – CPython编译器设计的大量信息。

http://docs.python.org/extending/index.html – 自定义模块/扩展

http://docs.python.org/c-api/index.html – C API,引擎盖下

关于这个话题没有太多的书面传说。 您最好的选择就是遵循PEP 306中的指导原则