是否可以使用2种编码语言(python和C语言)来制作单个程序?

时间:2015-03-18 18:51:00

标签: c python-2.7

我已经看到其他程序使用python脚本,我想知道我是否能在C中这样做。为什么这些程序会使用python脚本而不是实现python脚本在实际程序代码中会做什么?谢谢你回答。

2 个答案:

答案 0 :(得分:1)

看一下python documentation,答案是肯定的。

  

嵌入Python的最简单形式是使用非常高的   级别界面。此接口用于执行Python脚本   无需直接与应用程序交互。这个可以   例如,用于对文件执行某些操作。

#include <Python.h>

int
main(int argc, char *argv[])
{
  Py_SetProgramName(argv[0]);  /* optional but recommended */
  Py_Initialize();
  PyRun_SimpleString("from time import time,ctime\n"
                     "print 'Today is',ctime(time())\n");
  Py_Finalize();
  return 0;
}

使用python脚本而不是在C中直接实现它的原因是因为python更高级,因此更容易和更快地创建(以性价格)。

答案 1 :(得分:0)

是的,你可以这样做。顺便说一句,我建议使用一些Python 3.4(因为2.7非常旧,只能用于遗留代码)。

它被称为extending Python (with C code)(您将创建一个共享库 - 通过编译您的C代码 - 或者#34;插件&#34;可由Python加载)。您也可以进行相反的操作:在C程序中嵌入Python解释器。

BTW,其他一些脚本语言&amp;实现经过专门设计,可以轻松嵌入到您的C程序中,尤其是Lua&amp; GNU guile