For reference to posterity, this is how I got it to work in the end: PyObject* module = PyImport_ImportModule("__builtin__"); PyObject* obj = PyRun_String("1", Py_eval_input, PyModule_GetDict(module), NULL); Py_DECREF(module); long d = PyLong_AsLong(obj); printf("long:%ld\n", d); Py_DECREF(obj);
Can't say I really understand it, though, all rather esoteric... Peter On Oct 1, 12:16 pm, pbienst <peter.bienst...@gmail.com> wrote: > Here is what I tried, but it prints out '-1': > > PyObject* obj = PyRun_String("1", Py_single_input, > PyEval_GetGlobals(), PyEval_GetLocals()); > long d = PyLong_AsLong(obj); > printf("long:%ld\n", d); > Py_DECREF(obj); > > Peter -- http://mail.python.org/mailman/listinfo/python-list