[Python-de] namensraum aufräumen

Georg Mischler schorsch at schorsch.com
Fri Mar 23 17:26:53 EST 2001


cruciatuz wrote:

> Hello python-de,
>
>   Es ist mir aufgefallen das Tkinter und
>   Tkconstants in kleinen gui-scripts gerne so
>   eingebunden werden:
>
>   from Tkinter import *
>   from Tkconstants import *
>
>   Das flutet den Namensraum mit (gelinde gesagt)
>   viel Zeuch :)
>   ...
>   Habt ihr eine Idee für einen Algorythmus oder
>   kennt ihr einen Trick mit dem man einen solchen
>   clean-up dennoch veranlassen kann?

Wozu?

Wenn du von Anfang an weisst, dass du von den 300
in Modul xxx angebotenen Namen nur drei brauchst,
dann macht es wenig Sinn, die "from xxx import *"
Form zu verwenden. Entweder du arbeitest gleich mit
qualifizierten Namen (mach ich auch mit Tkinter
grundsaetzlich), oder du importierst wirklich
nur was du brauchst:

from xxx import aaa, bbb, ccc

Qualifizierte Namen haben natuerlich auch noch den
Vorteil, dass du nicht versehentlich eine Funktion
ueberschreibst, die du dann spaeter doch noch im
Original verwenden moechtest.

Einen Namensraum programmatisch nach Namen zu
durchsuchen, die garantiert nie verwendet werden,
ist bei einer dynamischen Sprache wie Python so
grauenhaft aufwendig, dass es als faktisch
unmoeglich bezeichnet werden kann.


Viel Spass!

-schorsch

-- 
Georg Mischler  --  simulations developer  --  schorsch at schorsch.com
+schorsch.com+  --  lighting design tools  --  http://www.schorsch.com/




More information about the Python-de mailing list