[Python-de] AW: [Python-de] Parameterübergabe bei lamdaamda

Stefan Franke sfranke at cdc-group.com
Thu May 20 16:57:45 EDT 1999


Nee, genau das geht in Python nicht, weil die Sprache nicht - wie 
so viele anderen Programmiersprachen - mit verschachtelten 
Scopes arbeitet, sondern mit genau zwei Namensräumen: Dem 
globalen und dem lokalen (in der aktuellen Funktion oder 
Methode).

Das hat u.a. auch noch zur Folge, daß sich lokal definierte 
Funktionen - etwa anstelle eines Lambda-Ausdrucks, nicht
rekursiv aufrufen können, weil ihr Name ja nur im Scope der
umgebenden Funktion bekannt ist.

Stefan


> -----Ursprüngliche Nachricht-----
> Von:	Michael Neumann [SMTP:neumann at s-direktnet.de]
> Gesendet am:	Donnerstag, 20. Mai 1999 14:11
> An:	python-de at server.python.net
> Betreff:	[Python-de] Parameterübergabe bei lamda
> 
> Hi...
>  
> Wenn ich innerhalb einer Funktion eine Variable setze, und auf diese
> dann in einer anonymen Funktion (lambda-Funktion) zugreifen will, die
> auch in derselben Funktion definiert ist wie die Variable, gibt es da
> noch einen anderen Weg als, daß ich die Variable als Parameter der
> lambda-Funktion übergebe? Kann man nicht die Variable in dieser
> Funktion global machen für alles, was innerhalb der Funktion definiert
> ist?
>  
> Michael




More information about the Python-de mailing list