[Python-de] Namensräume und globale variablen

Roland M. Kruggel rk.liste at bbf7.de
Son Apr 2 14:28:57 CEST 2006


Hallo Liste,

Ich habe ein paar probleme mit den Namensräumen und globale variablen. 
Warscheinlich, wie immer, nur 'ne Kleinigkeit. 

Hier ein paar programmfragmente:

-->
diverse.py
glob_var = 'n/a'
--<

-->
test1.py
from diverse import *
def anzeige():
    print glob_var
--<
funktioniert. ausgegeben wird 'n/a'

-->
test2.py
from diverse import *
from test1 import *
def set():
    global glob_var
    glob_var = 'neuwert'
def main():
    set()
    print glob_var        # ergebniss: 'neuwert'; richtig
    anzeige()             # ergebniss: 'n/a'    ; falsch! hier sollte
                          # ebenfalls 'neuwert' stehen
--<

Wo liegt mein Fehler?
Warum ist die globale variable nicht in test1.py gesetzt? wie kann ich 
es ändern?



-- 
cu

Roland Kruggel  mailto: rk.liste at bbf7.de
System: Intel 3.2Ghz, Debian etch, 2.6.15, KDE 3.4