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()
brain.print("Position: ({}, {})".format(x, y))
# Display a calculation using .format()
brain.print("Sum: {}".format(5 + 3))
wait(1, SECONDS)
# Display the time using .format()
brain.print("Time: {}".format(brain.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 |
|---|---|
|
A quantidade de casas decimais a apresentar. |
# Display pi with 2 decimal places
pi = 3.1415926535
brain.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
brain.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
brain.print("Formatted: ")
brain.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 |
|---|---|
|
A quantidade de casas decimais a apresentar. |
# Display a converted decimal to a percentage
value = 0.875
brain.print("Score: {:.1%}".format(value))
# Output: Score: 87.5%
Hexadecimal#
:#x converte números para hexadecimal.
Usage:
:#x
Parâmetros |
Descrição |
|---|---|
Este especificador de formato não possui parâmetros. |
# Convert 255 to hexadecimal
number = 255
brain.print("Hex: {:#x}".format(number))
# Output: Hex: 0xff
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. |
# Convert 3 to binary
brain.print("Binary: {:b}".format(3))
# Output: Binary: 11
Combinando strings#
Pode combinar (ou concatenar) strings utilizando duas abordagens:
Using .format#
Introduza valores diretamente na string utilizando {}.
# Display an answer based on the given emotion
emotion = "good"
brain.print("I'm {}, you?".format(emotion))
+ Operator#
Una várias partes utilizando +.
Nota: Os valores que não sejam strings devem ser primeiro convertidos em strings utilizando str().
# Display the x and y values
x = 10
y = 20
brain.print("X: " + str(x) + ", Y: " + str(y))
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. |
# Capitalize a string with .upper()
message = "vexcode"
brain.print(message.upper()) # Output: VEXCODE
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. |
# Make a string lowercase with .lower()
message = "VEXCODE"
brain.print(message.lower()) # Output: vexcode
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.
message = "Hey everyone!"
if "Hey" in message:
brain.print("Hello!")
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. |
# Check for 'CTE' at the start of a string
message = "CTE Robot"
if message.startswith("CTE"):
brain.print("CTE first!")
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. |
# Check for `Robot` at the end of a string
message = "CTE Robot"
if message.endswith("Robot"):
brain.print("Robot last!")
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.
# Display text on two lines
brain.print("First line\nSecond line")
Tab Spacing#
\t insere um espaço de tabulação entre palavras ou números.
# Display the quantity of disks
quantity = 2
brain.print("Disks:\t", quantity)