Python Namespaces

Wie in JAVA/C++ gibt es in Python das Konzept der Namespaces (=Namensräume).


import math     # import package
import mathutil # import package

umfang = mathutil.pi2 * radius # 
...
pi2=math.pi**2 # Pi^2, kein Konflikt mit pi2 aus  mathutil
...



Variante von import, so dass Module gleichen namespace verwendet: Statt
import sys; print(sys.argv) # explizite namespace Angabe

auch möglich:
from sys import argv; print(argv) # argv jetzt im std namespace

oder
from sys import *; print(argv) # alle Variablen/Funktione aus sys jetzt im std namespace

Inbesondere letzteres besser nicht verwenden!

Import mit alias-Namen

Man kann für das Module auch alias Namen einfuehren, z.B.:
import mathutil as mu
umfang = mu.pi2 * radius

Wird häufig verwendet!