dir() vs print(dir()) in the embedded mode
Nick Gnedin
ngnedin at gmail.com
Fri Mar 29 17:04:24 EDT 2013
Folks,
I have a newbie question: I am trying to embed Python into my
application. While playing around, I noticed that the behavior of the
interpreter in the embedded mode differs from the standalone one.
Namely, in the standalone mode if I type dir(), I get a list of build-in
symbols. In the embedded mode only print(dir()) does that, while just
dir() returns silently.
Is there a way to intercept the output of dir() (and all other commands)
and display them to the user?
Here is an example code that illustrates the behavior (the first call to
PyRun_SimpleString() returns silently).
Many thanks for your future hints,
Nick
#include <Python.h>
int main()
{
Py_Initialize();
PyRun_SimpleString("dir()");
printf("-----\n");
PyRun_SimpleString("print(dir())");
Py_Finalize();
return 0;
}
More information about the Python-list
mailing list