Como Passar um Dicionário para `str.format()` em Python
Em Python, o método str.format() nos permite inserir valores em uma string usando espaços reservados. Esses espaços reservados são representados por chaves {} e podem ser substituídos pelos valores desejados. Podemos passar um dicionário como argumento para o str.format() para substituir vários espaços reservados por pares de chave-valor do dicionário.
Aqui está um tutorial passo a passo sobre como passar um dicionário para str.format() em Python:
Passo 1: Criar um Dicionário
Primeiro, crie um dicionário com os valores que você deseja inserir na string. O dicionário deve consistir em pares de chave-valor, onde as chaves representam os espaços reservados na string.
dados = {
'nome': 'João',
'idade': 25,
'país': 'EUA'
}
Neste exemplo, temos um dicionário chamado dados com três chaves: 'nome', 'idade' e 'país'.
Passo 2: Definir a String
Em seguida, defina a string onde você deseja inserir os valores do dicionário. Os espaços reservados para as chaves do dicionário devem ser incluídos usando chaves {}.
mensagem = "Meu nome é {nome}, tenho {idade} anos e moro nos {país}."
Definimos uma string chamada mensagem com três espaços reservados: {nome}, {idade} e {país}.
Passo 3: Passar o Dicionário para str.format()
Para passar o dicionário para str.format(), chame o método format() na string e passe o dicionário como argumento.
mensagem_formatada = mensagem.format(**dados)
A sintaxe **dados é usada para desempacotar o dicionário e passar seus pares de chave-valor como argumentos de palavra-chave para o método format().
Passo 4: Imprimir ou Usar a String Formatada
Por fim, você pode imprimir ou usar a string formatada como desejar. Os espaços reservados na string serão substituídos pelos valores correspondentes do dicionário.
print(mensagem_formatada)
A saída será:
Meu nome é João, tenho 25 anos e moro nos EUA.
Exemplos Adicionais
Exemplo 1: Valores Numéricos
dados = {
'num1': 10,
'num2': 5,
'soma': 15
}
mensagem = "A soma de {num1} e {num2} é {soma}."
mensagem_formatada = mensagem.format(**dados)
print(mensagem_formatada)
Saída:
A soma de 10 e 5 é 15.
Exemplo 2: Valores de Data
dados = {
'dia': 12,
'mês': 'outubro',
'ano': 2022
}
mensagem = "Hoje é {dia} de {mês}, {ano}."
mensagem_formatada = mensagem.format(**dados)
print(mensagem_formatada)
Saída:
Hoje é 12 de outubro, 2022.
Exemplo 3: Valores Booleanos
dados = {
'está_ensolarado': True,
'está_chovendo': False
}
mensagem = "Está ensolarado? {está_ensolarado}. Está chovendo? {está_chovendo}."
mensagem_formatada = mensagem.format(**dados)
print(mensagem_formatada)
Saída:
Está ensolarado? True. Está chovendo? False.
Seguindo esses passos e exemplos, você pode facilmente passar um dicionário para str.format() em Python e inserir valores dinamicamente em suas strings.