Codezeile des tages

Da sage mir mal einer, dass python nicht seine kranken und kryptischen abgründe habe. Eben ertappte ich mich beim schreiben der folgenden zeile code:

f = lambda s: '(%s)' % (', '.join(["'%s'" % (i, ) for i in s]), )

Grund dafür: aus einzelbuchstaben in einem string wie ‚blah‘ soll eine eingeklammerte liste mit den einzelnen zeichen als strings gemacht werden, also (‚b‘, ‚l‘, ‚a‘, ‚h‘). Diese findet dann als bestanteil einer SQL-anweisung verwendung. Das lambda ist eine etwas seltsame art, kurze funktionen zu definieren, ohne diesen kurzen trick sähe das gleiche so aus…

def f(s): return '(%s)' % (', '.join(["'%s'" % (i, ) for i in s]), )

…und wäre nicht einen deut lesbarer.

Wenn mir noch mal jemand etwas über die tolle und intuitive python-syntax erzählt…

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.