Module import path when embedding python in C

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • graph

    Module import path when embedding python in C

    Per http://mail.python.org/pipermail/pyt...er/506206.html
    something like this (plus error handling) seems to be the right way to
    add to sys.path when embedding python in C:

    PyObject *sys_path = PySys_GetObject ("path");
    PyObject *path = PyString_FromSt ring("/your/path");
    PyList_Append(s ys_path, path);

    Does anyone know why PySys_GetObject wasn't documented until somewhat
    recently (http://bugs.python.org/issue1245) if it has been part of the
    system module interface since at least Python 1.5.2? Is it not
    supposed to be used? What's the difference the above and importing
    the sys module and then doing the append?

    Thanks in advance.

    -g
  • Christian Heimes

    #2
    Re: Module import path when embedding python in C

    graph wrote:
    Does anyone know why PySys_GetObject wasn't documented until somewhat
    recently (http://bugs.python.org/issue1245) if it has been part of the
    system module interface since at least Python 1.5.2? Is it not
    supposed to be used? What's the difference the above and importing
    the sys module and then doing the append?
    The PySys_Get/SetObject methods are faster than PyImport. The methods
    access the sys module directly without going through the import API. The
    funcitons weren't documented because they were simply forgotten.

    Christian

    Comment

    Working...