Formatage de chaînes#
Introduction#
La méthode recommandée pour formater du texte et des nombres en Python est d’utiliser les f-strings. Elles permettent d’intégrer directement des variables, des expressions et des appels de fonction à l’intérieur de {}.
Pour créer une f-string, ajoutez f avant la chaîne et placez toute variable, expression ou appel de fonction à l’intérieur de {}.
x = 1
y = 5
# Display the variables using an f-string
controller.screen.print(f"Position: ({x}, {y})")
# Display a calculation with an f-string
controller.screen.print(f"Sum: {5 + 3}")
# Display the robot's battery capacity with an f-string
controller.screen.print(f"Battery: {controller.get_battery_level()}%")
F-strings – Intégrez des variables et des expressions directement dans le texte.
f”{value}”– Affiche les variables, les expressions ou les appels de fonction à l’intérieur d’une chaîne.
Mise en forme des nombres dans les chaînes f – Contrôlez l’apparence des valeurs numériques.
:.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.
Combinaison de chaînes – Combinez du texte et des valeurs.
f”{value}”– Combinez 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.
Vérifications de sous-chaînes – Testez la présence ou la position d’un 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.
Mise en forme des nombres dans les chaînes f#
Les chaînes f permettent un contrôle précis du nombre de décimales, de l’arrondi, des séparateurs de milliers, et plus encore, grâce aux spécificateurs de format suivants :
Fixed Decimal Places#
.xf contrôle le nombre de décimales affichées pour un nombre.
Usage:
.xf
Paramètres |
Description |
|---|---|
|
Le nombre de décimales à afficher. |
# Display pi with 2 decimal places
pi = 3.1415926535
controller.screen.print(f"Pi: {pi:.2f}")
# Output: Pi: 3.14
Rounding Numbers#
round arrondit les nombres en dehors d’une f-string ou à l’intérieur de {}.
Usage:
round(number, x)
Paramètres |
Description |
|---|---|
|
Le nombre à arrondir. |
|
Le nombre de décimales à arrondir. |
# Display a value rounded to only 2 decimal places
value = 5.6789
controller.screen.print(f"{round(value, 2)}")
# Output: 5.68
Thousands Separator#
, 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
controller.screen.print(f"{number:,}")
# Output: 1,234,567
Percentage#
.x% formate les valeurs décimales en pourcentages.
Usage:
.x%
Paramètres |
Description |
|---|---|
|
Le nombre de décimales à afficher. |
# Display a converted decimal to a percentage
value = 0.875
controller.screen.print(f"{value:.1%}")
# Output: 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
controller.screen.print(f"{number:#x}")
# Output: 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
controller.screen.print(f"Binary: {3:b}")
# Output: Binary: 11
Combinaison de chaînes#
Vous pouvez combiner (ou concaténer) des chaînes de caractères en utilisant deux approches :
Using f-strings#
Avec les f-strings, vous pouvez intégrer des variables directement à l’intérieur de {}.
# Display an answer based on the given emotion
emotion = "good"
controller.screen.print(f"I'm {emotion}, you?")
+ Operator#
Vous pouvez combiner manuellement des chaînes de caractères à l’aide de l’opérateur +.
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
controller.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. |
# Display a message in uppercase
message = "vexcode"
controller.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. |
# Display a message in lowercase
message = "VEXCODE"
controller.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.
# Display a message if "Hey" is in the string
message = "Hey everyone!"
if "Hey" in message:
controller.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 |
|---|---|
|
La sous-chaîne à rechercher au début de la chaîne. |
# Display a message if the string starts with "AIR"
message = "AIR Drone"
if message.startswith("AIR"):
controller.screen.print("AIR 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 |
|---|---|
|
La sous-chaîne à rechercher à la fin de la chaîne. |
# Display a message if the string ends with "Drone"
message = "AIR Drone"
if message.endswith("Drone"):
controller.screen.print("Drone 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 la sortie texte. 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 barrels
quantity = 2
print("IDs:\t", quantity)