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.screen.print("Position: ({}, {})".format(x, y))

# Display a calculation using .format()
brain.screen.print("Sum: {}".format(5 + 3))

# Display the robot's battery capacity using .format()
brain.screen.print("Battery: {}%".format(brain.battery.capacity()))

Formatação de números com .format — Introduz valores e expressões numa string.

  • :.xf — Define o número de casas decimais a apresentar.

  • round — Arredondar 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.

Cores — Alterar a cor do texto na Consola

  • Colors — Define a cor do texto da Consola.

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.

  • \n — Adiciona uma quebra de linha (nova linha).

  • \t — Adiciona um espaço de tabulação entre os itens.

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

x

A quantidade de casas decimais a apresentar.

# Display pi with 2 decimal places
pi = 3.1415926535
brain.screen.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

number

O número a arredondar.

x

O número de casas decimais a arredondar.

# Display a value rounded to only 2 decimal places
value = 5.6789
brain.screen.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.screen.print("Formatted: ")
brain.screen.next_row()
brain.screen.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

x

A quantidade de casas decimais a apresentar.

# Display a converted decimal to a percentage
value = 0.875
brain.screen.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.screen.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.screen.print("Binary: {:b}".format(3))
# Output: Binary: 11

Cores#

Pode alterar a cor do texto que será impresso na Consola de Impressão utilizando os seguintes códigos de cores:

  • [31m — Red

  • [32m — Green

  • [34m — Blue

  • [30m — Black

  • [37m — White

  • [33m — Yellow

  • [91m — Orange

  • [35m — Purple

  • [36m — Cyan

  • [97m — Transparent

Todos os códigos de cor necessitam de seguir uma sequência de escape = \033 para funcionar.

Pode utilizar isto directamente num comando print com uma string.

# Print VEXcode in Red to the Print Console
print("\033[31mVEXcode")

Também pode utilizá-lo sozinho para definir todos os comandos print subsequentes para a cor definida.

# Set the Print Console text color to Red before printing
print("\033[31m")
print("VEXcode")

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.screen.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.screen.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.

message = "vexcode"
brain.screen.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.

message = "VEXCODE"
brain.screen.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.screen.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

substring

A subcadeia de caracteres a verificar no início da cadeia.

message = "IQ Robot"

if message.startswith("IQ"):
    brain.screen.print("IQ 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

substring

A substring a verificar no final da string.

message = "IQ Robot"

if message.endswith("Robot"):
    brain.screen.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. Estão apenas disponíveis para utilização com o Console.

New Line#

\n move o texto para uma nova linha ao imprimir.

# Display text on two lines
print("First line\nSecond line")

Tab Spacing#

\t insere um espaço de tabulação entre palavras ou números.

# Display the quantity of blocks
quantity = 2
print("Blocks:\t", quantity)