如何从Windows中的c程序执行python(2.7)脚本

时间:2014-02-01 06:27:23

标签: python c execution

我一直在寻找这个解决方案,但找不到解决方案。一些解决方案建议使用“系统”功能。然而,这个建议随后总是会有10个人说永远不会使用系统,因为它缺乏线程安全性。有谁知道怎么做?

只是一些信息:我的python脚本获取并解析来自互联网的JSON,然后创建一个文本文件,然后c程序使用。所以,我不想再运行一个,而是另一个,我想从C语言中连续运行它们。

编辑:Grammer

1 个答案:

答案 0 :(得分:2)

您可以在c,c ++中使用系统功能

像这样

 system("python ashouri.py");

使用此代码

  static PyObject *my_callback = NULL;

  static PyObject *
  my_set_callback(PyObject *dummy, PyObject *args)
  {
      PyObject *result = NULL;
      PyObject *temp;

      if (PyArg_ParseTuple(args, "O:set_callback", &temp)) {
          if (!PyCallable_Check(temp)) {
              PyErr_SetString(PyExc_TypeError, "parameter must be callable");
              return NULL;
          }
          Py_XINCREF(temp);         /* Add a reference to new callback */
          Py_XDECREF(my_callback);  /* Dispose of previous callback */
          my_callback = temp;       /* Remember new callback */
          /* Boilerplate to return "None" */
          Py_INCREF(Py_None);
          result = Py_None;
      }
      return result;
  }

成功