Formatage des chaines de caractères en Python

1 – La méthode String format() en Python

Un exemple de méthode de formatage simple qui formate la chaîne à l’aide d’un délimiteur de position.

Exemple:

nom = "Albert"
job = "enseignant"
s = "Je m'appelle {} je suis {} de mathématiques".format(nom,job)
print(s)

Ce qui affiche après exécution:
Je m’appelle Albert je suis enseignant de mathématiques

Remarque

on peux changer l’ordre à condition de mettre des indices.

Exemple: échanger d’ordre

# -*- coding: utf-8 -*-
nom = "Albert"
job = "enseignant"
s = "Je m'appelle {1} je suis {0} de mathématiques".format(job,nom)
print(s)

2 – La méthode format() avec conversion du type de donnée.

La méthode format() peut jouer aussi le rôle d’un convertisseur de données d’un type à un autre à. Il suffit pour cela de choisir le type auquel on veux convertir et le mettre au sein des accolades:

Exemple:

# -*- coding: utf-8 -*-
var = 26
print("La valeur décimale est : {0:d}".format(var))
print("La valeur hexadecimale est : {0:x}".format(var))
print("La valeur octale est : {0:o}".format(var))
print("La valeur binaire est : {0:b}".format(var))

Ce qui affiche après exécution:
La valeur décimale est : 26
La valeur hexadecimale est : 1a
La valeur octale est : 32
La valeur binaire est : 11010

3 – Formatage à l’aide du symbole %

Exemple: formatage à l’aide du symbole %

# -*- coding: utf-8 -*-
nom = "Albert"
job = "enseignant"
"Je m'appelle %s je suis %s de mathématiques" % (nom,job)

Ce qui affiche à l’exécution:
Je m’appelle Albert je suis enseignant de mathématiques

NB:

%s veut dire ‘la conversion de la variable en string‘. Ainsi, il y a d’autres syntaxe pour les différents types de variables:

  1. %d pour convertir la variable en int().
  2. %f pour convertir la variable en float().
  3. %x pour convertir la variable en hex()
  4. etc

Exemple:

# -*- coding: utf-8 -*-
nom = "Albert"
job = "enseignant"
age = 30
s = "Je m'appelle %s je suis un %s de mathématiques. J'ai %f ans" % (nom,job,age)
print(s)

Cette fois-ci à l’exécution, on constate réellement la conversion de la variable age en flot:
Je m’appelle Albert je suis enseignant de mathématiques. J’ai 30.000000 ans