NumPy C-API #
提防那些不关心细节的人。
—老威廉·费瑟
真相就在那里。
—克里斯·卡特,《X 档案》
NumPy 提供了一个 C-API,使用户能够扩展系统并访问数组对象以在其他例程中使用。真正理解C-API的最好方法是阅读源代码。然而,如果您不熟悉 (C) 源代码,那么一开始这可能是一次令人畏惧的经历。请放心,通过练习,任务会变得更容易,并且您可能会对 C 代码如此简单的理解感到惊讶。即使您认为无法从头开始编写 C 代码,理解和修改已编写的源代码也比从头创建源代码容易得多。
Python 扩展特别容易理解,因为它们都具有非常相似的结构。诚然,NumPy 并不是 Python 的简单扩展,可能需要更多的窥探才能掌握。尤其如此,因为代码生成技术简化了非常相似的代码的维护,但可能使代码对于初学者来说可读性稍差。不过,只要有一点坚持,代码就可以开放给你理解。我希望这份 C-API 指南能够帮助您熟悉可以使用 NumPy 完成的编译级工作,以便从代码中挤出最后一点必要的速度。