Python Tip of the Day

Ich hab grad wieder was über Python gelernt.

Bekanntermaßen kann man ja Stringformatierung nicht nur mit den üblichen %-Sequenzen machen, sondern auch so:

notification_pattern = 'on_%(name)s_%(action)s'
                           % { 'name': foo, 'action': bar }

Nachteil: man muß erst so ein blödes Dictionary aufbauen oder direkt hinschreiben, wie da oben. Ist nervig zu tippen und schlecht zu lesen. Alternativ geht aber auch:

name = foo
action = bar
notification_pattern = 'on_%(name)s_%(action)s' % locals()

locals() gibt nämlich ein Dictionary mit den lokal definierten Variablen zurück. Man muß nur aufpassen, keine anderweitig gebrauchten Variablen zu überschreiben.

Page created
Comments? Use or send an e-mail.