[Python-Dev] Builtin exit, good in interpreter, bad in code.
Sean Reifschneider
jafo-python-dev at tummy.com
Mon Apr 24 03:55:53 CEST 2006
A friend of mine is learning Python, and had a problem with the exit
builtin. I like that in the interpreter it gives useful information, but
he was writing a program in a file and tried "exit(0)", and was presented
with the non-obvious error:
TypeError: 'str' object is not callable
What about something like:
>>> class ExitClass:
... def __repr__(self):
... return('Hey, press control-D')
... def __call__(self, value):
... raise SyntaxError, 'You want to use sys.exit'
...
>>> exit = ExitClass()
>>> exit
Hey, press control-D
>>> exit(1)
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "<stdin>", line 5, in __call__
SyntaxError: You want to use sys.exit
Jerub on #python thinks that maybe it needs to subclass the string object
instead, but in general it seems like it might be an improvement.
Thoughts?
Thanks,
Sean
--
Peppermint Patty gets a DSL line in "YOU'D TELL ME IF YOU WERE IN A GERMAN
SCHEISSE VIDEO WOULDN'T YOU, CHARLIE BROWN"
Sean Reifschneider, Member of Technical Staff <jafo at tummy.com>
tummy.com, ltd. - Linux Consulting since 1995: Ask me about High Availability
More information about the Python-Dev
mailing list