2
respostas

Formatação de strings

Bom dia Pelo que eu entendi, usar strings como no caso abaixo

print("Tentativa {} de {}" .format(rodada,total_de_tentativas))

seria somente para ficar visualmente mais bonito na exibição do código, pois é o mesmo resultado do código abaixo

print("Tentativa", rodada, "de", total_de_tentativas)

correto?

2 respostas

Sim e não.

O método format serve para outras coisas além de apenas colocar a variavel no lugar onde estão as chaves {}. O método format pode também alinhar o texto a esquerda ou a direita, também pode definir um tamanho maximo de caracteres que pode ter a string, também pode servir para definir quantas casas decimais vão aparecer no caso se a variavel for um float.

Exemplo: Texto com maximo de 30 caracteres e texto com maximo de 30 caracteres alinhados a direita

rodada = segunda
total_de_tentativas = 30
print("Tentativa {:30} de {:>30}" .format(rodada,total_de_tentativas))

Exemplo: Definir número de casas decimais de um número float

valor =  3.14159265359
print("O valor de pi com 3 casas decimais é {:.3f}".format(valor))

Tente rodar esses dois codigos para entender melhor os exemplos. Estes são apenas dois de inumeros possiveis usos da formatação de strings. Tente procurar outros tipos de usos para a formatação na propria documentação do pyhton https://python-reference.readthedocs.io/en/latest/docs/str/format.html

Além disso eu recomendo procurar entender mais sobre fstrings que é como o python 3 faz a formatação de strings. Exemplo:

valor =  3.14159265359
print(f"O valor de pi com 3 casas decimais é {valor:.3f}")

Bom dia, Gabriel!

A partir do python 3.8, se não me engano, o .format pode ser usado apenas com um f após o parentese e antes da aspa, com as variáveis inseridas diretamente dentro das chaves.

print(f'Tentativa {rodada} de {total_de_tentativas}')

Eu particularmente acho bem mais fácil já inserir a variável ou as configurações nas chaves.

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