我正在编写一个应用程序,我用python库编写所有前端和GUI(特别是wxpython)。对于这个应用程序,我想用C编写模型类并使用python来使用已编译的C代码?如何在python中实现?
我知道这是一个模糊的问题,但我在起点上苦苦挣扎。
答案 0 :(得分:1)
如果你正在使用CPython(最流行的Python版本),你需要学习CPython C API。其他python实现可能支持也可能不支持C调用。您还可以使用ctypes库,它更易于学习,但也更加严格,可能无法支持您所需的一切。
答案 1 :(得分:1)
您可以尝试Cython,它基本上是Python,内嵌支持C类型和调用(它通过CPython API)。
答案 2 :(得分:1)
您可以严格按照以下方式单独设计(python部分)和代码(c ++部分):
编写一个完整的c ++程序,它在终端/控制台中运行,然后让python-application通过os.Popen调用这些c ++ - terminal programm。
因此,如果您的程序是一个计算器,它就会这样做:
(python gui)5 + 5 - > my_c_programm.exe“5 + 5” - > (返回)10 - > (python gui)显示
通过这种方式,您可以使用带有和不带gui的程序。
比在c ++程序中嵌入Python或使用C ++扩展Python更容易,更快。
我基本上对我当前的项目做同样的事情,但是像这样:
php:我的网络界面 python:用于结构和逻辑,易于操作 c ++:用于繁重的计算和我需要速度的地方
所以php - > python - > C ++
对我来说效果非常好:))