Seite 1 von 1

with Class() as (func1, func2, func3)

Verfasst: Donnerstag 21. Juni 2007, 16:07
von nkoehring
Hallo auch...

ich habe eben unter http://aspn.activestate.com/ASPN/Cookbo ... ipe/521914 die Implementierung eines Switch-Case-Kontrukts in Python gefunden.

Interessant daran ist folgender Ausdruck:

Code: Alles auswählen

    def test1():
        with Switch() as (switch, case, default):
        #...usw
Das habe ich vorher noch nie gesehen. Ist das eine Art "Instanziere die Klasse Switch() und bilde direkte Referenzen zu den Methoden switch, case und default"?

Also ich finds genial ^^

Verfasst: Donnerstag 21. Juni 2007, 21:05
von birkenfeld
Nein. Was an switch, case und default gebunden wird, ist das, was die Methode __enter__() des Switch()-Objekts zurückgibt.

Siehe http://python.org/dev/peps/pep-0343.

Dieses Switch() ist fast so gut wie das goto.py :)