2

Python を C++ コードに埋め込む小さなプログラム (以下のプログラム) を作成しています。

#include <Python.h>

int main()     
{

    int x;
    Py_Initialize();

    const char* pythonScript = "print 'Start'"
    PyRun_SimpleString(pythonScript);

    /*
    assign a python variable 'n' to 'x' i.e n=x
    */

    Py_Finalize();
    return 0; 

}

ここでの私の要件は、Python 変数 'n' に C++ 変数 'x' の値を割り当てることです。これを行う方法はありますか?

前もって感謝します。

4

1 に答える 1

1

次のフラグメントが機能するはずです(テストされていません)。

PyObject *main = PyImport_AddModule("__main__"); // borrowed
if (main == NULL)
    error();
PyObject *globals = PyModule_GetDict(main); // borrowed
PyObject *value = PyInt_FromLong(x);
if (value == NULL)
   error();
if (PyDict_SetItemString(globals, "n", value) < 0)
   error();
Py_DECREF(value);
于 2013-01-31T17:40:40.237 に答える