redundant imports

Tim Jarman tmj at
Wed Mar 30 15:22:42 CEST 2005

max(01)* wrote:

> hi everybody.
> suppose that imports and (because it uses
> names from both), and that imports
> if python were c, code-1.c should only *include* code-2.c, because the
> latter in turns includes code-3.c.
> inclusion of modules in c is a purely preprocessing textual matter
> (compilation is deferred to after the fact), i guess, so that such
> things are possible. import of modules in python is a different beast,
> so the "redundancy" is (i think) necessary.
> any comment/suggestion/idea?
> bye
> macs

It's not as redundant as it looks. Once a module has been imported it goes
into sys.modules and any subsequent imports refer to that original import,
so the overhead of reading and parsing the file is only incurred once. As
you're probably aware, Python also caches compilation results in *.pyc
files; it will only compile the imported module if it changed since the
last compilation.

Check out the docs for the full skinny, in particular

Tim J

Website: www DOT jarmania FULLSTOP com

More information about the Python-list mailing list