Python固然强大,不过现阶段,它在调用一些系统底层的功能时,仍然不如C/C++来得深入直接。因此,使用C语言扩展Python的功能——编写C模块,是尤为必要的。一个典型的例子就是著名的音频播放模块PyAudio,它并非使用纯Python直接调用音频接口,而是以PortAudio作为与系统音频交互的底层,再用一个C模块沟通PortAudio与Python,方能在Python中播放出声音。
以下就是我在探究开发Python C语言模块尝试的笔记。Python使用3.7版本。
例程来自博客园 @窗户:《python和C语言混编的几种方式》
http://www.cnblogs.com/Colin-Cai/p/7594551.html
原例程只适用于Python 2.7,我对其进行修改以适应Python 3.x的API
编写的思路
编写C模块,思路并不难。可以归纳为以下的“三步走”战略:
- 用C语言编写你想要的功能
- 然后用Python的API将你C程序的接口封装好,以供Python调用
- 最后使用
setuptool
编译成.pyd
格式的共享库
第一步:C语言编写功能
- 本文作者: 爱拼安小匠
- 本文链接: https://anclark.github.io/2018/09/15/Use_Python/笔记:Python-3开发C模块初试/
- 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-ND 3.0(署名-非商用-禁止演绎 3.0) 许可协议。转载请注明出处!