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…