Re: aborting without killing the python interpreter
import sys def main(): print 'exiting' sys.exit() try: main() except SystemExit: pass > I suspect I may need to use exceptions, but I'm hoping > not to need them. Thanks. Use the Exceptions! -- http://mail.python.org/mailman/listinfo/python-list
Re: aborting without killing the python interpreter
Russ wrote: > I wrote a simple little function for exiting with an error message: > > def error ( message ): print_stack(); exit ("\nERROR: " + message + > "\n") > > It works fine for executing as a script, but when I run it > interactively in the python interpreter it kills the interpreter. > That's not what I want. Is there a simple way to have a script > terminate but not have it kill the python interpreter when I run it > interactively? I suspect I may need to use exceptions, but I'm hoping > not to need them. Thanks. Exceptions do *exactly* what you want in a very clean and simple way. They are a fundamental feature of Python. Do not fear them. They are your friends. -- Robert Kern [EMAIL PROTECTED] "In the fields of hell where the grass grows high Are the graves of dreams allowed to die." -- Richard Harter -- http://mail.python.org/mailman/listinfo/python-list
Re: aborting without killing the python interpreter
Terry Reedy wrote: > How? In the standard interpreter, 'exit' is bound to the string > 'Use Ctrl-Z plus Return to exit.' > so trying to call it as a function fails. I'm _presuming_ there was a hidden `from sys import *` in there. Hence calling exit with the string (the help for sys.exit shows that if a string is passed in, it will be printed before the process exits with failure -- something I wasn't aware of actually). -- Erik Max Francis && [EMAIL PROTECTED] && http://www.alcyone.com/max/ San Jose, CA, USA && 37 20 N 121 53 W && AIM erikmaxfrancis God heals, and the doctor takes the fee. -- Benjamin Franklin -- http://mail.python.org/mailman/listinfo/python-list
Re: aborting without killing the python interpreter
"Terry Reedy" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] > How? In the standard interpreter, 'exit' is bound to the string > 'Use Ctrl-Z plus Return to exit.' This is, of course, Windows specific. Other systems have other strings. -- http://mail.python.org/mailman/listinfo/python-list
Re: aborting without killing the python interpreter
"Russ" <[EMAIL PROTECTED]> wrote in message news:[EMAIL PROTECTED] >I wrote a simple little function for exiting with an error message: > > def error ( message ): print_stack(); exit ("\nERROR: " + message + > "\n") > > It works fine for executing as a script, How? In the standard interpreter, 'exit' is bound to the string 'Use Ctrl-Z plus Return to exit.' so trying to call it as a function fails. but when I run it > interactively in the python interpreter it kills the interpreter. > That's not what I want. Is there a simple way to have a script > terminate but not have it kill the python interpreter when I run it > interactively? I suspect I may need to use exceptions, but I'm hoping > not to need them. Thanks. The interactive interpreter runs a statement at a time and gives a prompt after any output. From a command shell, you can use a flag (-i I think) to enter interactive mode after the script end. Terry Jan Reedy -- http://mail.python.org/mailman/listinfo/python-list
aborting without killing the python interpreter
I wrote a simple little function for exiting with an error message: def error ( message ): print_stack(); exit ("\nERROR: " + message + "\n") It works fine for executing as a script, but when I run it interactively in the python interpreter it kills the interpreter. That's not what I want. Is there a simple way to have a script terminate but not have it kill the python interpreter when I run it interactively? I suspect I may need to use exceptions, but I'm hoping not to need them. Thanks. -- http://mail.python.org/mailman/listinfo/python-list