Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Esse f é o format né?

print(f'O nome é {nome} e sua idade é {idade} anos')

seria o mesmo que

print('O nome é {} e sua idade é {}'.format(nome, idade))

certo?

3 respostas
solução!

Olá!

Respondendo sua pergunta, eu diria que sim e não.

Na situação que você citou como exemplo, ambas funcionam com o mesmo propósito e retornam a mesma saída, porém, há particularidades entre elas.

O print("{}".format(variavel)) possibilita a ordenação dos valores ao informar o index que a variável se encontra no parâmetro do .format().

fruta1 = "cenoura"
fruta2 = "banana"
fruta3 = "abacate"

print("Vou comprar {}, {} e {}.".format(fruta1, fruta2, fruta3)) #Saída: Vou comprar cenoura, banana e abacate.
print("Vou comprar {2}, {0} e {1}.".format(fruta1, fruta2, fruta3)) #Saída: Vou comprar abacate, cenoura e banana.

Apesar dessa flexibilidade de ordenação, usar o .format() não é uma opção tão atrativa para lidar com grandes quantidades de variáveis, pois pode atrapalhar na manutenção do próprio desenvolvedor e de outras pessoas que possam a vir trabalhar com esse código.

Utilizar o print(f"{variavel}") é mais direto ao ponto e é visualmente mais simples para aplicar manutenções, além de permitir a realização de operações matemáticas diretamente na função, diferente do .format().

fruta1 = "cenoura"
fruta2 = "banana"
fruta3 = "abacate"

print(f"Vou comprar {fruta1}, {fruta2} e {fruta3}.") #Saída: Vou comprar cenoura, banana e abacate.
print(f"Vou comprar {fruta3}, {fruta1} e {fruta2}.") #Saída: Vou comprar abacate, cenoura e banana.

print(f"5 x 8 = {5*8}.") #Saída: 5 x 8 = 40

Entendi, valeu!

O f' é mais recente da versão 3 do python.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software