如何编译C++文件为Python扩展模块
1个回答
2017-08-26 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
关注
展开全部
这个在python的帮助里就有。例子代码也完整。参考”Extending and Embedding the Python Interpreter“, 还有"Python/C API Reference Manual". 后面还有一段说明。
The API is equally usable from C++, but for brevity it is generally referred to
as the Python/C API。
不过有两个建议:
最好用C语言,而不是用C++。这主要是保持兼容性,方便使用ctypes, C++略复杂些。
另外就是建议你使用cython,这样挺容易就生成python 的ext,所以不用再为C++编译python ext发愁。
如果想在C++里调用python也容易。初始化一个interpreter,就和python一样用。通过返回变量获得结果。
另外C++与python程序数据交换还可以采用共享内存,其中有一个是基于numpy的共享内存方案挺成熟的。
The API is equally usable from C++, but for brevity it is generally referred to
as the Python/C API。
不过有两个建议:
最好用C语言,而不是用C++。这主要是保持兼容性,方便使用ctypes, C++略复杂些。
另外就是建议你使用cython,这样挺容易就生成python 的ext,所以不用再为C++编译python ext发愁。
如果想在C++里调用python也容易。初始化一个interpreter,就和python一样用。通过返回变量获得结果。
另外C++与python程序数据交换还可以采用共享内存,其中有一个是基于numpy的共享内存方案挺成熟的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询