[Python-de] globale variablen
Roland M. Kruggel
rk.liste at bbf7.de
Mon Apr 24 13:47:28 CEST 2006
Hallo Liste,
ich dachte eigentlich ich hätte die Namespaces in Python verstanden,
bin aber jetzt eines Besseren belehrt worden.
Folgendes Beispiel:
tglob.py
---------
global_var = 'null'
...
p1.py
------
# -*- coding: iso-8859-1 -*
from tglob import *
def prog1():
print 'p1:prog1 =', global_var
p2.py
-------
#!/usr/bin/env python
# -*- coding: iso-8859-1 -*
from tglob import *
from p1 import *
def pp():
global global_var
print 'soll null =', global_var
prog1()
global_var = 'new'
print 'soll new =', global_var
prog1() # hier sollt auch 'new' erscheinen
pp()
Warum wird die globale_var nicht auch global geschrieben? Lesen
funktioniert ja. Was mache ich da falsch? Wo ist mein Denkfehler?
Wenn ich global_var als Liste oder Dict definieren funktioniert das
prima. Bitte um Hilfe, stehe hier ziemlich auf dem Schlauch. Google
und python.org helfen hier auch nicht weiter.
--
cu
Roland Kruggel mailto: rk.liste at bbf7.de
System: Intel, Debian etch, 2.6.15, KDE 3.5