[Python-de] locals()

Georg Mischler schorsch at schorsch.com
Mit Aug 25 13:47:11 CEST 2004


Uwe Schmitt wrote:

>
>
> Hi,  folgende Funktion macht nicht das, was ich eigentlich gerne hätte:
>
>    def fun():
>        locals()["x"] = 42
>        print locals()
>        print x
>
> Beim Aufruf zeigt das erste print an, daß die Variable x mit Wert 42
> in locals() vorkommt.
>
> "print x" allerdings liefert eine Fehlermeldung
>     "NameError: global name 'x' is not defined"
>
> Hab ich da was falsch verstanden ???


Hast du die Dokumentation zu locals() gelesen?

http://www.python.org/doc/2.3.4/lib/built-in-funcs.html

locals()
	Update and return a dictionary representing the current local
	symbol table.
	Warning: The contents of this dictionary should not be
	modified; changes may not affect the values of local
	variables used by the interpreter.



-schorsch

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