Formatage de chaînes#

Introduction#

La méthode .format() en Python est utilisée pour créer des chaînes de caractères contenant des variables, des expressions ou des valeurs. Cette méthode remplace les espaces réservés entre accolades {} dans une chaîne par les valeurs fournies à l’intérieur 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()))

Mise en forme des nombres avec .format — Insérer des valeurs et des expressions dans une chaîne.

  • :.xf — Définit le nombre de décimales à afficher.

  • round — Arrondit un nombre à un nombre donné de décimales.

  • :, — Ajoute des virgules comme séparateurs de milliers.

  • :.x% — Convertit un nombre décimal en pourcentage avec x décimales.

  • :#x — Formate un nombre en hexadécimal.

  • :b — Formate un nombre en binaire.

Couleurs — Modifiez la couleur du texte dans la console

  • Colors — Définir la couleur du texte de la console.

Combinaison de chaînes de caractères — Combiner texte et valeurs.

  • .format() — Combine des chaînes et des variables dans une seule expression.

  • + operator — Concaténer manuellement des chaînes avec conversion de type optionnelle.

Méthodes de chaînes de caractères — Modifier la casse du texte.

  • upper() — Convertit tous les caractères en majuscules.

  • lower() — Convertit tous les caractères en minuscules.

Recherche de sous-chaînes — Test de présence ou de position du texte.

  • in — Vérifie si un mot existe dans une chaîne.

  • startswith() — Vérifie si une chaîne commence par une valeur donnée.

  • endswith() — Vérifie si une chaîne se termine par une valeur donnée.

Séquences d’échappement — Formatez la sortie avec des caractères spéciaux.

  • \n — Ajoute un saut de ligne (nouvelle ligne).

  • \t — Ajoute un espace de tabulation entre les éléments.

Formatage des nombres avec .format#

La commande .format permet de contrôler l’affichage des nombres, notamment le nombre de décimales, l’arrondi et d’autres styles de mise en forme tels que :

Fixed Decimal Places#

.xf contrôle le nombre de décimales affichées pour un nombre.

Usage:
.xf

Paramètres

Description

x

Le nombre de décimales à afficher.

# Display pi with 2 decimal places
pi = 3.1415926535
brain.screen.print("Pi: {:.2f}".format(pi))
# Output: Pi: 3.14

Rounding Numbers#

L’option round arrondit un nombre à un nombre spécifique de décimales avant la mise en forme.

Usage:
round(number, x)

Paramètres

Description

number

Le nombre à arrondir.

x

Le nombre de décimales à arrondir.

# 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#

:, insère des virgules comme séparateurs de milliers pour rendre les grands nombres plus lisibles.

Usage:
:,

Paramètres

Description

Ce spécificateur de format ne comporte aucun paramètre.

# 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% formate les valeurs décimales en pourcentages en multipliant la valeur par 100 et en ajoutant un signe de pourcentage.

Usage:
:.x%

Paramètres

Description

x

Le nombre de décimales à afficher.

# Display a converted decimal to a percentage
value = 0.875
brain.screen.print("Score: {:.1%}".format(value))
# Output: Score: 87.5%

Hexadecimal#

:#x convertit les nombres en hexadécimal.

Usage:
:#x

Paramètres

Description

Ce spécificateur de format ne comporte aucun paramètre.

# Convert 255 to hexadecimal
number = 255
brain.screen.print("Hex: {:#x}".format(number))
# Output: Hex: 0xff

Binary#

:b convertit les nombres en binaire (base 2).

Usage:
:b

Paramètres

Description

Ce spécificateur de format ne comporte aucun paramètre.

# Convert 3 to binary
brain.screen.print("Binary: {:b}".format(3))
# Output: Binary: 11

Couleurs#

Vous pouvez modifier la couleur du texte lors de l’impression dans la console d’impression en utilisant les codes de couleur suivants :

  • [31m — Red

  • [32m — Green

  • [34m — Blue

  • [30m — Black

  • [37m — White

  • [33m — Yellow

  • [91m — Orange

  • [35m — Purple

  • [36m — Cyan

  • [97m — Transparent

Tous les codes de couleur doivent suivre une séquence d’échappement = \033 pour fonctionner.

Vous pouvez utiliser cela directement dans une commande print avec une chaîne de caractères.

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

Vous pouvez également l’utiliser seul pour définir ultérieurement la couleur de toutes les commandes print.

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

Combinaison de chaînes#

Vous pouvez combiner (ou concaténer) des chaînes de caractères en utilisant deux approches :

Using .format#

Insérez directement les valeurs dans la chaîne en utilisant {}.

# Display an answer based on the given emotion
emotion = "good"
brain.screen.print("I'm {}, you?".format(emotion))

+ Operator#

Assemblez plusieurs parties en utilisant +.

Remarque : Les valeurs non-chaînes doivent d’abord être converties en chaînes à l’aide de str().

# Display the x and y values
x = 10
y = 20
brain.screen.print("X: " + str(x) + ", Y: " + str(y))

Méthodes de chaînes de caractères#

Python propose des méthodes intégrées pour modifier et vérifier les chaînes de caractères.

upper#

upper convertit toutes les lettres d’une chaîne en majuscules.

Usage:
upper()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

message = "vexcode"
brain.screen.print(message.upper())  # Output: VEXCODE

lower#

lower convertit toutes les lettres d’une chaîne en minuscules.

Usage:
lower()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

message = "VEXCODE"
brain.screen.print(message.lower())  # Output: vexcode

Vérification des sous-chaînes#

in#

in est un mot-clé qui renvoie une valeur booléenne indiquant si une sous-chaîne (mot ou fragment de texte) existe dans une chaîne.

  • True — Le mot existe dans la chaîne.

  • False — Le mot n’existe pas dans la chaîne.

message = "Hey everyone!"
if "Hey" in message:
    brain.screen.print("Hello!")

startswith#

La fonction startswith renvoie une valeur booléenne indiquant si une chaîne de caractères commence par une valeur donnée.

  • True — Le mot commence la chaîne.

  • False — Le mot ne commence pas la chaîne.

Usage:
startswith(substring)

Paramètres

Description

substring

La sous-chaîne à rechercher au début de la chaîne.

message = "IQ Robot"

if message.startswith("IQ"):
    brain.screen.print("IQ first!")

endswith#

La fonction endswith renvoie une valeur booléenne indiquant si une chaîne de caractères se termine par une valeur donnée.

  • True — Le mot termine la chaîne.

  • False — Le mot ne termine pas la chaîne.

Usage:
endswith(substring)

Paramètres

Description

substring

La sous-chaîne à rechercher à la fin de la chaîne.

message = "IQ Robot"

if message.endswith("Robot"):
    brain.screen.print("Robot last!")

Séquences d’évasion#

Les séquences d’échappement sont des caractères spéciaux utilisés dans les chaînes de caractères pour formater le texte affiché. Elles sont uniquement disponibles pour une utilisation avec la console.

New Line#

\n déplace le texte à une nouvelle ligne lors de l’impression.

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

Tab Spacing#

\t insère une tabulation entre les mots ou les chiffres.

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