Python: Formatar strings com dicionários (template)

Palavras-chave: strings, formatação, template, dicionário

Muitos programadores certamente sabem que a linguagem Python nos permite formatar strings usando os caracteres de formatação comuns à linguagem C. O que talvez poucos saibam é que existe uma “extensão” ao padrão C que faz com que o sistema de formatação de strings em Python se pareça com uma mini-linguagem de templates.

Para usar essa funcionalidade basta que, no lugar de uma tupla com valores, utilize-se um dicionário com chaves do tipo string e na “template” informe qual valor desse dicionário que será impresso:

registros = [
   { 'nome': 'Osvaldo Santana', 'linguagens': 'Python' },
   { 'nome': 'Alfredo Kojima', 'linguagens': 'C/C++/Obj-C' },
   { 'nome': 'Aurelio Jargas', 'linguagens': 'Shell' },
]

for registro in registros:
   print "Nome: %(nome)-15s Linguagens: %(linguagens)s" % registro

Esse exemplo irá imprimir em:

Nome: Osvaldo Santana Linguagens: Python
Nome: Alfredo Kojima  Linguagens: C/C++/Obj-C
Nome: Aurelio Jargas  Linguagens: Shell
This entry was posted in Python. Bookmark the permalink.