Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #77748

How to exit from embedded IPython shell?

Date 2014-09-09 13:57 -0400
Subject How to exit from embedded IPython shell?
From Andy Zhang <andy.zhang@gmail.com>
Newsgroups comp.lang.python
Message-ID <mailman.13913.1410285433.18130.python-list@python.org> (permalink)

Show all headers | View raw


[Multipart message — attachments visible in raw view] - view raw

Hi,

I am embedding IPython inside a c application, by running PYTHONSTARTUP
file which is:

import IPython
IPython.embed()

Then the application interact with user input via stdin.  After the user is
done, she would type EOF.  The program should exit, but keep all the python
objects in memory, and the user can re-enter python by calling the function
again.

Because of the embedded IPython, the user needs to enter EOF twice (First
EOF exit IPython, second exit outter Python).  I wonder whether it is
possible to exit the outer Shell in my C code so that user can type one EOF
and exit IPython and Python?

        char *startup = Py_GETENV("PYTHONSTARTUP");
        if (startup != NULL && startup[0] != '\0') {
FILE *fp = fopen(startup, "r");
if (fp != NULL) {
(void) PyRun_SimpleFile(fp, startup);
PyErr_Clear();
fclose(fp);
}
  }
        retval = PyRun_AnyFile(stdin, (const char *) "<stdin>");

Many thanks,

Back to comp.lang.python | Previous | Next | Find similar | Unroll thread


Thread

How to exit from embedded IPython shell? Andy Zhang <andy.zhang@gmail.com> - 2014-09-09 13:57 -0400

csiph-web