Chaînes de caractères

Création

La création d'une chaîne de caractères en Python se fait en utilisant des guillemets simples ('...'), des guillemets doubles ("..."), ou des guillemets triples ('''...''' ou """...""") pour les chaînes multi-lignes.

variable1 = 42 #création d'un entier
print("Type de la variable :", type(variable1))

variable1 = "42" #création d'une chaîne de caractères
print("Type de la variable :",type(variable1))

Concaténation

Il est possible de coller des chaînes de caractères les unes aux autres grâce à l'opérateur +, on parle de concaténation.

concaténation.py
animal = "chat"
nom = "Felix"

phrase = "Mon animal est un "+animal+", et il s'appelle "+nom
On obtient alors une chaîne de caractères phrase qui est égale à :
"Mon animal est un chat, et il s'appelle Felix"

Méthodes de chaînes de caractères

join()

Concaténer une séquence d'éléments en une seule chaîne de caractères, en insérant une chaîne de caractères entre chaque élément.

Utilisation : '/'.join(['lundi', 'mardi', 'mercredi']) affichera 'lundi/mardi/mercredi'

split()

Sépare une chaîne de caractères en une liste de sous-chaînes. Le séparateur par défaut est espace.

Utilisation: 'lundi mardi mercredi'.split() affichera ['lundi', 'mardi, 'mercredi']

upper()

Affiche la chaîne de caractère en majuscules.

Utilisation : 'inFoRmatique'.upper() affichera 'INFORMATIQUE'

lower()

Affiche la chaîne de caractère en minscules.

Utilisation : 'iNfOrMatique'.lower() affichera 'informatique'

capitalize()

Affiche la chaîne de caractère en transformant le premier caractère en majuscule.

Utilisation : 'iNfOrMatiqUe'.capitalize() affichera 'Informatique'

replace()

Remplace dans une chaîne de caractères une suite de caractères par une autre.

Utilisation :

phrase = "Les chats sont des animaux indépendants."
nouvelle_phrase = phrase.replace("chats", "chiens").replace("indépendants", "affectueux")

print(nouvelle_phrase)

Ce code affichera 'Les chiens sont des animaux affectueux.'

Formatage

Méthode .format()

On appelle la méthode format() sur une chaîne de caractères. Dans cette chaîne de caractères, on repère les emplacements où on veut insérer des valeurs grâce à des marqueurs de substitution {}. On indique ensuite en paramètres de la méthode format() les valeurs que l'on veut insérer à la place des marqueurs. Reprenons l'exemple précédent avec ce principe :

animal = "chat"
nom = "Felix"

phrase = "Mon animal est un {}, et il s'appelle {}".format(animal, nom)
On obtient alors une chaîne de caractères phrase qui est égale à :
"Mon animal est un chat, et il s'appelle Felix"

Les marqueurs de substitution peuvent être complétés avec une clé ou un indice pour faciliter le formatage et l'organisation des arguments :

animal = "chat"
nom = "Felix"

phrase = "Mon animal est un {var1}, et il s'appelle {prenom}".format(var1=animal, prenom=nom)
phrase = "Mon animal est un {1}, et il s'appelle {0}".format(nom, animal)
Le résultat sera ici identique aux exemples précédents. La valeur des clés utilisées est arbitraire, c'est simplement une aide à l'organisation.

Les f-string

Depuis Python 3.6, on peut formater plus facilement des chaînes de caractères grâce aux f-strings. Il faut penser à ajouter la lettre f devant les guillemets.

Les f-string sont plus performantes que la méthode .format(), elles sont également plus lisibles, ce qui en fait une pratique recommandée pour les version de Python 3.6 et supérieures.

exemple de f-strings
animal = "chat"
nom = "Felix"

phrase = f"Mon animal est un {animal}, et il s'appelle {nom}"

La méthode .format() comme les f-strings permettent des formatages plus poussés, nous en reparlerons plus tard.