Les chaînes de caractères contiennent du texte, c’est à dire une succession de caractères, le plus souvent des lettres (mais ça peut aussi être un espace, un point d’interrogation, un emoji, la liste des caractères possibles est longue !).
Une chaîne de caractères, c’est au final un peu comme un tableau où chaque élément est un caractère. Ainsi, on pourra utiliser certaines propriétés du tableau, comme par exemple [37]
pour accéder au 38ème élément, ou len()
pour trouver la taille de la chaîne !
Chaîne vide :
phrase = ""
Chaîne contenant du texte :
phrase = "Vive Magic Makers !!"
Avec une variable « str » :
nom = "Guillaume" phrase = "Bonjour " + nom print(phrase) >> "Bonjour Guillaume"
Avec plusieurs variable « str » :
nom = "Guillaume" pseudo = "Glorf" phrase = "Bonjour " + nom + " qu'on appelle " + pseudo print(phrase) >> "Bonjour Guillaume qu'on appelle Glorf"
Attention ! Pense à mettre des espaces quand tu construis des chaînes, comme ici après Bonjour : sinon on aurait "BonjourGuillaume"
Avec un nombre :
age = 15 phrase = "Tu as " + str(age) + " ans :)" print(phrase) >> "Tu as 15 ans :)"
Afficher directement une chaîne concaténée :
age = 15 print("Tu as " + str(age) + " ans :)") >> "Tu as 15 ans :)"
Attention ! Python ne peut concaténer que des chaînes de caractères – il faut donc penser à convertir notre nombre en chaîne de caractère 🙂
En Python, on va modifier très souvent des chaînes de caractères ; on pourrait le faire caractère par caractère, mais c’est long ! C’est pour cela qu’ils existent des fonctions, qui permettent de faire facilement des modifications classiques.
Il existe de trèèès nombreuses fonctions pour faire ces modifications, tu peux en trouver une liste complète sur la documentation python (en français !). Voici une petite sélection des plus pratiques :
Remplacer un mot par un autre :
phrase = "Vive Magic Makers !!" phrase = phrase.replace("Makers", "Glorf") print(phrase) >> "Vive Magic Glorf !!"
Tout mettre en minuscule :
(pratique quand on demande à l’utilisateur de deviner un mot !)
nom = "GuiLlaumE" nom = nom.lower() print(nom) >> "guillaume"
On peut aussi avoir envie de séparer une phrase en plusieurs parties que l’on mettra dans un tableau, pour cela on utilisera la fonction split()
Dans les parenthèses ont indiquera le caractère que l’on utilisera pour séparer.
phrase = "Vive Magic Makers !!" tableau = phrase.split(" ") print(tableau) >> ["Vive", "Magic", "Makers", "!!"]
Ici on utilise le séparateur espace, nous avons donc un tableau avec tout les mots séparés par des espaces.
On peut se servir de cette fonction pour récupérer une partie d’une chaine de caractères qui nous intéresse comme dans cet exemple :
MonFichier = ‘/content/mes_images/MaSuperImage.jpg’
parties = MonFichier.split(‘/’)
print(parties)
>>[ », ‘content’, ‘mes_images’, ‘MaSuperImage.jpg’]
Ici, on voit que l’on a séparé la chaîne de caractères en utilisant le ‘/’.
En regardant bien, on voit que la dernière case du tableau contient uniquement le nom de notre fichier, sans la route complète. Intéressant, n’est ce pas ?
Comme on le disait en introduction, les chaînes de caractères sont des tableaux de caractères ; on peut donc aussi accéder à un seul caractère, voir le remplacer, comme avec un tableau :
Récupérer le premier caractère :
phrase = "Vive Magic Makers !!" print(phrase[0]) >> "V"
Récupérer le cinquième caractère :
phrase = "Vive Magic Makers !!" print(phrase[4]) >> " "
phrase = "Vive Magic Makers !!"
print(phrase[0].isalpha()) >> True
phrase = « 888 Vive Magic Makers !! »
print(phrase[0].isalpha())
>> False
phrase = "Vive Magic Makers !!"
print(phrase[0].isupper()) >> True
phrase = "Vive Magic Makers !!" print(phrase[0].islower()) >> False