使用python GUI中的C编译代码

时间:2012-03-19 18:59:10

标签: c++ python c wxpython

我正在编写一个应用程序,我用python库编写所有前端和GUI(特别是wxpython)。对于这个应用程序,我想用C编写模型类并使用python来使用已编译的C代码?如何在python中实现?

我知道这是一个模糊的问题,但我在起点上苦苦挣扎。

3 个答案:

答案 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 ++

对我来说效果非常好:))