Accueil › Cours › Les chaînes de caractères
Chaînes de caractères en Python et algo : cours 2ème TI
Manipule du texte : longueur, lettres, morceaux, majuscules.
Les leçons de ce chapitre
- Longueur et caractères
- Les opérations sur les chaînes
- Comparer et convertir
Leçon 5.1 : Longueur et caractères
Une chaîne de caractères est une suite de lettres, de chiffres et de signes. Chaque caractère a une position, appelée indice. Attention : on commence à compter à 0 ! Dans "Tunis", T est à l'indice 0, u à l'indice 1, et s à l'indice 4.
- La longueur :
long(ch)en algorithme,len(ch)en Python."Tunis"a 5 caractères. - Un caractère :
ch[i](dans les deux notations). - Le dernier caractère est à l'indice
longueur - 1.
Attention : Erreur classique : ch[len(ch)] n'existe pas ! Pour une chaîne de 5 caractères, les indices vont de 0 à 4. Python répond « index out of range ».
En Python
len donne la longueur, mot[0] le premier caractère et mot[len(mot) - 1] le dernier.
print("Donner un mot :")
mot = input()
print("Longueur :", len(mot))
print("Premier :", mot[0])
print("Dernier :", mot[len(mot) - 1])
En algorithme
En algorithme, la longueur est long(mot).
Algorithme Mot
Début
Ecrire("Donner un mot :")
Lire(mot)
Ecrire("Longueur : ", long(mot))
Ecrire("Premier : ", mot[0])
Ecrire("Dernier : ", mot[long(mot) - 1])
Fin
TDO
Objet | Type/Nature
mot | Chaîne de caractères
Leçon 5.2 : Les opérations sur les chaînes
On ne modifie pas une chaîne : on en fabrique une nouvelle avec des fonctions prêtes à l'emploi.
- Majuscules / minuscules :
majus(ch),minus(ch)ouch.upper(),ch.lower(). - Un morceau :
sous_chaine(ch, d, f)ouch[d:f], du caractère d inclus au caractère f exclu. - Chercher :
pos(x, ch)ouch.find(x)donne l'indice de la première apparition, ou-1si x n'est pas dans ch. - Coller :
concat(a, b)oua + b. - Tester la présence :
"a" in chdonne vrai ou faux.
Astuce : ch[0:4] prend les caractères d'indice 0, 1, 2 et 3 : le dernier indice n'est jamais inclus.
En Python
Chaque ligne fabrique un nouveau texte à partir du mot lu.
mot = input()
print(mot.upper())
print(mot.lower())
print(mot[0:4])
print(mot.find("t"))
print(mot + " forever")
En algorithme
Les mêmes opérations avec les fonctions de l'algorithme.
Algorithme Chaines
Début
Lire(mot)
Ecrire(majus(mot))
Ecrire(minus(mot))
Ecrire(sous_chaine(mot, 0, 4))
Ecrire(pos("t", mot))
Ecrire(concat(mot, " forever"))
Fin
TDO
Objet | Type/Nature
mot | Chaîne de caractères
Leçon 5.3 : Comparer et convertir
On peut comparer deux chaînes avec = (== en Python) et avec <, >. Pour < et >, l'ordre est celui du dictionnaire. Mais attention : les majuscules passent avant les minuscules, et "Tunis" n'est pas égal à "tunis".
Texte et nombre
- Nombre vers texte :
convch(n)oustr(n). - Texte vers nombre :
valeur(ch)ouint(ch)/float(ch).
Astuce : Astuce : pour compter les chiffres d'un nombre, convertis-le en texte et prends sa longueur : len(str(2026)) vaut 4.
En Python
Comparer deux mots et afficher celui qui vient en premier dans l'alphabet.
print("Premier mot :")
a = input()
print("Deuxième mot :")
b = input()
if a == b:
print("Mots identiques")
elif a < b:
print(a, "vient avant", b)
else:
print(b, "vient avant", a)
En algorithme
Les chaînes se comparent avec les mêmes signes que les nombres.
Algorithme Alphabet
Début
Ecrire("Premier mot :")
Lire(a)
Ecrire("Deuxième mot :")
Lire(b)
Si a = b Alors
Ecrire("Mots identiques")
Sinon Si a < b Alors
Ecrire(a, " vient avant ", b)
Sinon
Ecrire(b, " vient avant ", a)
FinSi
Fin
TDO
Objet | Type/Nature
a, b | Chaîne de caractères
S'entraîner gratuitement
Chaque leçon a 3 exercices gratuits avec indices pour appliquer ce chapitre avec Hannibot.
← Chapitre précédent : Les conditions · Chapitre suivant : La boucle Pour →
Tous les chapitres · Voir les devoirs corrigés de 2ème TI
Cours écrit pour Mission Carthage d'après le programme officiel. Ton professeur reste la référence.