Formatação de strings#
Introdução#
O método .format() em Python é utilizado para criar strings que incluem variáveis, expressões ou valores. Este método substitui os marcadores de posição das chaves {} numa string com valores fornecidos dentro de .format().
x = 1
y = 5
# Display the variables using .format()
print("Position: ({}, {})".format(x, y))
# Display a calculation using .format()
print("Sum: {}".format(5 + 3))
wait(1, SECONDS)
# Display the time using .format()
print("Time: {}".format(timer.time(SECONDS)))
Formatação de números com .format – Insere valores e expressões numa string.
:.xf– Define o número de casas decimais a apresentar.round– Arredonda um número para um determinado número de casas decimais.:,– Adiciona vírgulas como separadores de milhares.:.x%– Converte um decimal numa percentagem com x casas decimais.:#x– Formata um número como hexadecimal.:b– Formata um número como binário.
Combinar strings – Combinar texto e valores.
.format()– Combina strings e variáveis numa única expressão.+ operator– Concatenar strings manualmente com conversão de tipo opcional.
Métodos de string – Alterar maiúsculas e minúsculas do texto.
upper()– Converte todos os caracteres para maiúsculas.lower()– Converte todos os caracteres para minúsculas.
Verificação de substrings – Teste para verificar a presença ou posição do texto.
in– Verifica se uma palavra existe numa string.startswith()– Verifica se uma string começa com um determinado valor.endswith()– Verifica se uma string termina com um determinado valor.
Sequências de escape – Formatar a saída com caracteres especiais.
Formatação de números com .format#
O parâmetro .format pode ser utilizado para controlar a aparência dos números, incluindo casas decimais, arredondamento e outros estilos de formatação, tais como:
Fixed Decimal Places#
.xf controla quantas casas decimais um número é apresentado.
Usage:
:.xf
Parâmetros |
Descrição |
|---|---|
|
Número de casas decimais a apresentar. |
# Display pi with 2 decimal places
pi = 3.1415926535
console.print("Pi: {:.2f}".format(pi))
# Output: Pi: 3.14
Rounding Numbers#
round arredonda um número para um número específico de casas decimais antes da formatação.
Usage:
round(number, x)
Parâmetros |
Descrição |
|---|---|
|
O número a arredondar. |
|
O número de casas decimais a arredondar. |
# Display a value rounded to only 2 decimal places
value = 5.6789
console.print("Rounded: {}".format(round(value, 2)))
# Output: Rounded: 5.68
Thousands Separator#
:, insere vírgulas como separadores de milhares para tornar os números grandes mais legíveis.
Usage:
:,
Parâmetros |
Descrição |
|---|---|
Este especificador de formato não possui parâmetros. |
# Display a large number separated with commas
number = 1234567
print("Formatted: ")
print("{:,}".format(number))
# Output: Formatted: 1,234,567
Percentage#
:.x% formata os valores decimais como percentagens, multiplicando o valor por 100 e adicionando um sinal de percentagem.
Usage:
:.x%
Parâmetros |
Descrição |
|---|---|
|
Número de casas decimais a apresentar. |
def main():
# Display a converted decimal to a percentage
value = 0.875
console.print("Score: {:.1%}".format(value))
# Output: Score: 87.5%
# Start threads — Do not delete
start_thread(main)
Hexadecimal#
:#x converte números para hexadecimal.
Usage:
:#x
Parâmetros |
Descrição |
|---|---|
Este especificador de formato não possui parâmetros. |
def main():
# Convert 255 to hexadecimal
number = 255
console.print("Hex: {:#x}".format(number))
# Output: Hex: 0xff
# Start threads — Do not delete
start_thread(main)
Binary#
:b converte números para binário (base 2).
Usage:
:b
Parâmetros |
Descrição |
|---|---|
Este especificador de formato não possui parâmetros. |
def main():
# Convert 3 to binary
console.print("Binary: {:b}".format(3))
# Output: Binary: 11
# Start threads — Do not delete
start_thread(main)
Combinando strings#
Pode combinar (ou concatenar) strings utilizando duas abordagens:
Using .format#
Introduza valores diretamente na string utilizando {}.
def main():
# Display an answer based on the given emotion
emotion = "good"
console.print("I'm {}, you?".format(emotion))
# Start threads — Do not delete
start_thread(main)
+ Operator#
Una várias partes utilizando +.
Nota: Os valores que não sejam strings devem ser primeiro convertidos em strings utilizando str().
def main():
# Display the x and y values
x = 10
y = 20
console.print("X: " + str(x) + ", Y: " + str(y))
# Start threads — Do not delete
start_thread(main)
Métodos de string#
O Python fornece métodos integrados para modificar e verificar strings.
upper#
upper converte todas as letras de uma string para maiúsculas.
Usage:
upper()
Parâmetros |
Descrição |
|---|---|
Este método não tem parâmetros. |
def main():
# Capitalize a string with .upper()
message = "vexcode"
console.print(message.upper()) # Output: VEXCODE
# Start threads — Do not delete
start_thread(main)
lower#
lower converte todas as letras de uma string para minúsculas.
Usage:
lower()
Parâmetros |
Descrição |
|---|---|
Este método não tem parâmetros. |
def main():
# Make a string lowercase with .lower()
message = "VEXCODE"
console.print(message.lower()) # Output: vexcode
# Start threads — Do not delete
start_thread(main)
Verificação de substrings#
in#
in é uma palavra-chave que devolve um valor booleano indicando se existe uma substring (palavra ou excerto de texto) numa string.
True– A palavra existe na string.False– A palavra não existe na sequência.
def main():
message = "Hey everyone!"
if "Hey" in message:
console.print("Hello!")
# Start threads — Do not delete
start_thread(main)
startswith#
A função startswith devolve um valor booleano indicando se uma string começa com um determinado valor.
True– A palavra inicia a sequência.False– A palavra não inicia a sequência.
Usage:
startswith(substring)
Parâmetros |
Descrição |
|---|---|
|
A subcadeia de caracteres a verificar no início da cadeia. |
def main():
# Check for 'V5' at the start of a string
message = "V5 Robot"
if message.startswith("V5"):
console.print("V5 first!")
# Start threads — Do not delete
start_thread(main)
endswith#
A função endswith devolve um valor booleano indicando se uma string termina com um determinado valor.
True– A palavra termina a sequência.False– A palavra não termina a sequência.
Usage:
endswith(substring)
Parâmetros |
Descrição |
|---|---|
|
A substring a verificar no final da string. |
def main():
# Check for `Robot` at the end of a string
message = "V5 Robot"
if message.endswith("Robot"):
console.print("Robot last!")
# Start threads — Do not delete
start_thread(main)
Sequências de Escape#
As sequências de escape são caracteres especiais utilizados dentro de strings para formatar a saída de texto.
New Line#
\n move o texto para uma nova linha ao imprimir.
def main():
# Display text on two lines
console.print("First line\nSecond line")
# Start threads — Do not delete
start_thread(main)
Tab Spacing#
\t insere um espaço de tabulação entre palavras ou números.
def main():
# Display the quantity of disks
quantity = 2
console.print("Disks:\t", quantity)
# Start threads — Do not delete
start_thread(main)