Keeping Python loaded

Matt Gerrans mgerrans at
Tue Nov 27 10:16:52 CET 2001

This sounds like the slant I'm after.  That is, I want more than disk cache
and paging tricks, I want the Python engine initialized and running, so it
doesn't have to do that for every script.   The Ant make tool for Java (which
doesn't keep re-loading the java compiler for each separate file, as a normal
make file does), got me going on this idea and I thought it would be handy for
extending my laptop's battery life and improve the performance (eliminate the
load time) of Python scripts in general.

Where do I find mod_python and mod_snake?   I searched in my Python directory
to no avail.   Are they a part of Apache?   Or Zope?

One simple trick I was considering was to write a little Tkinter or wxPython
UI that hangs out (keeping the engine running at all times) and just lets me
name a script; it could then simply import it and call main().  Yes, this
assumes there is a main(); I always have the "if __name__ == "__main__":
main()" line at the end of my scripts, so they can all have the same entry
point and can run stand-alone or be imported.  This is not a very general
solution, of course...

- mfg

Martin von Loewis <loewis at> wrote in message
news:j4wv0go1h6.fsf at
> "Matt Gerrans" <mgerrans at> writes:
> > Is there some existing facility for keeping Python running in memory
> > at all times, ready to execute scripts, rather than having it load
> > each time a script runs?  I think I can figure out a way to do this,
> > but I wanted to check first and see if a clever solution (probably
> > better than what I'm brewing) already exists...
> There are a number of specialized solutions, like mod_python or
> mod_snake for Apache, or like Zope. Likewise, the
> only forks, instead of exec'ing.
> The tricky part is how to tell Python to load and execute another
> script. If that is solved, execfile may be all you need.
> Regards,
> Martin

More information about the Python-list mailing list