[Tutor] Global presets ?
Dave S
pythontut at pusspaws.net
Sat Dec 4 22:45:04 CET 2004
Brian van den Broek wrote:
>
> Hi Dave, Kent, and all,
>
> I have a caution about the
> from Config import *
> idiom that Kent didn't mention.
>
> It can lead to namespace pollution, in that if you have a module 'foo'
> with a name 'bar' and you are witting a script which says
> from foo import *
> you have to be very careful that your script doesn't also assign to
> the name 'bar', else you may end up thinking you have two different
> things available when you don't. ('bar' will either point to your
> script's bar or to Config.bar, depending on whether you imported
> Config before or after your scripts assignment to bar.)
>
> The first time this bites you, it can eat up hours of your life. (But
> I'm not bitter;-)
>
> I avoid this by using the
> import examplemodule as em
>
> That imports everything so that you accesses it by
> em.some_name
> rather than
> examplemodule.some_name
>
> I find that really handy for the handful of utility modules I import
> into most of my scripts. Then, I just have to be sure to avoid a small
> set of names -- 'em' in this case. And my python files have nice
> descriptive names, but I only have to type then once.
>
> Best,
>
> Brian vdB
>
> _______________________________________________
> Tutor maillist - Tutor at python.org
> http://mail.python.org/mailman/listinfo/tutor
>
Thanks for pointing that out. Im a bit of a Python coward and opted for
from config import data_dir,HTML_addr
Mainly so I can see where these variables come from. I have never seen
the 'as' operator on an import before, so much to learn (and remember) ;-)
Dave
More information about the Tutor
mailing list