exit() or sys.exit()

Brendan brendandetracey at yahoo.com
Wed Jun 17 13:06:20 EDT 2009


On Jun 17, 1:33 pm, Tim Chase <python.l... at tim.thechases.com> wrote:
> Brendan wrote:
> > What is the difference on exit() and sys.exit() when called in the
> > main body of a script? From the command line they seem to have the
> > same effect.
>
> In Python <=2.4 you had to use sys.exit() because
> __builtins__.exit() griped:
>
>    tchase at asgix:~$ python2.4
>    Python 2.4.4 (#2, Apr 15 2008, 23:43:20)
>    [GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)] on linux2
> Type "help", "copyright", "credits" or "license" for more
> information.
>    >>> type(exit)
>    <type 'str'>
>    >>> exit()
>    Traceback (most recent call last):
>      File "<stdin>", line 1, in ?
>    TypeError: 'str' object is not callable
>
> In 2.5, it's an instance of site.Quitter which is callable,
> allowing it to behave like sys.exit()  (from my observations,
> __builtins__.exit() and sys.exit() behave the same).
>
> I tend to use sys.exit() because I've still got code running on
> machines mired at 2.4
>
> -tkc

Okay. Thanks.



More information about the Python-list mailing list