Académique Documents
Professionnel Documents
Culture Documents
Exemple
Parcourez les lettres du mot «banane»:
for x in "banana":
print(x)
Longueur de chaine
Pour obtenir la longueur d'une chaîne, utilisez la len()fonction.
Exemple
La len()fonction renvoie la longueur d'une chaîne:
a = "Hello, World!"
print(len(a))
Vérifier la chaîne
Pour vérifier si une certaine phrase ou caractère est présent dans une chaîne, nous
pouvons utiliser le mot-clé in.
Exemple
Vérifiez si " free " est présent dans le texte suivant:
txt = "The best things in life are free!"
print("free" in txt)
Exemple
Imprimer uniquement si " free " est présent:
txt = "The best things in life are free!"
if "free" in txt:
print("Yes, 'free' is present.")
Vérifiez si NON
Pour vérifier si une certaine phrase ou caractère n'est PAS présent dans une chaîne, nous
pouvons utiliser le mot-clé not in.
Exemple
Vérifiez si " expensive " n'est PAS présent dans le texte suivant:
txt = "The best things in life are free!"
print("expensive" not in txt)
Utilisez-le dans une if déclaration:
Exemple
afficher uniquement si "expensive" n'est PAS présent:
txt = "The best things in life are free!"
if "expensive" not in txt:
print("Yes, 'expensive' is NOT present.")
Indexation négative
Utilisez des index négatifs pour démarrer la tranche à partir de la fin de la chaîne:
Exemple
Obtenez les personnages:
De: "o" dans "World!" (position -5)
À, mais non inclus: "d" dans "World!" (position -2):
b = "Hello, World!"
print(b[-5:-2])
Remplacer la chaîne
Exemple
La replace()méthode remplace une chaîne par une autre chaîne:
a = "Hello, World!"
print(a.replace("H", "J"))
Chaîne divisée
La split()méthode renvoie une liste dans laquelle le texte entre le séparateur spécifié
devient les éléments de la liste.
Exemple
La split()méthode divise la chaîne en sous-chaînes si elle trouve des instances du
séparateur:
a = "Hello, World!"
print(a.split(",")) # returns ['Hello', ' World!']
find() :
La méthode .find(), quant à elle, recherche une chaîne de caractères passée en
argument :
Exemple
animal = "girafe"
print(animal.find("i"))
print(animal.find("afe"))
print(animal.find("z"))
print(animal.find("tig"))
Count() :
La méthode .count() compte le nombre d’occurrences d'une chaîne de caractères passée en argument :
Exemple
animaux = "girafe tigre"
print(animaux.count("i"))
print(animaux.count("z"))
print(animaux.count("tigre"))
startswith :
La méthode .startswith() vérifie si une chaîne de caractères commence par une
autre chaîne de caractères :
Exemple
chaine = "Bonjour monsieur le capitaine !"
print(chaine.startswith("Bonjour"))
#True
print(chaine.startswith("Au revoir"))
#False
Méthodes de chaîne
Python a un ensemble de méthodes intégrées que vous pouvez utiliser sur des chaînes.
Les fonctions de chaines de caractères en Python
Extraction de sous-chaînes :
x = 'abcdef' : définition de la chaîne.
print(x[2]) : 3ème caractère (indice commence à 0), ici c.
print(x[0:3]) : caractères d'indices 0 à 3 - 1, ici abc.
print(x[1:]) : caractères à partir de l'indice 1, ici bcdef.
print(x[:3]) : caractères jusqu'à l'indice 3 - 1, ici abc.
print(x[-2:]) : les 2 derniers caractères, ici ef.
print(x[0:-2]) : toute la chaîne sauf les 2 derniers caractères.
si l'index de fin est > à la longueur, c'est la longueur qui est utilisée.
print(len(x)) : longueur, ici 6.
x[::2] : chaîne avec un caractère sur deux (en commençant par le premier), ici
ace.
x[1::2] : chaîne avec un caractère sur deux en commençant par le deuxième, ici
bdf.
x[::-1] : la chaîne renversée, ici fedcba.
Fonctions sur les chaînes :
'N' in s : renvoie True si N est un caractère de s.
s.count('ab') : retourne le nombre de chaîne "ab" (non overlappant).
isalnum, isalpha, isdigit, islower, isupper, isspace : tests sur le type des
caractères de la chaîne (False si chaîne vide).
s.startswith('ab') : renvoie True si commence par "ab" (idem avec endswith).
s.find('ab') : retourne le plus petit index correspondant à la chaîne "ab" (-1 si
pas trouvé).
s.find('ab', 3) : retourne le plus petit index correspondant à la chaîne "ab" dans
s[3:] (-1 si pas trouvé).
s.find('ab', 3, 15) : retourne le plus petit index correspondant à la chaîne "ab"
dans s[3:15] (-1 si pas trouvé).
s.rfind('ab') : retourne le plus grand index correspondant à la chaîne "ab" (-1 si
pas trouvé), i.e commence par la recherche par la fin
s.index('ab') comme find, mais si sous-chaîne non trouvé, lève une ValueError.
s.lower() : renvoie la chaîne convertie en minuscules (idem avec s.upper() pour
les majuscules), sans affecter s
s.capitalize() : met en majuscule la première lettre et en minuscules toutes les
autres quelque soit la casse de départ.
s.title() : renvoie une chaîne où toutes les premières lettres de chaque mot
sont en majuscule et le reste en minuscules.
s.replace('old', 'new') : remplace toutes les occurrences de "old" par "new",
sans affecter s.
s.replace('old', 'new', 1) : remplace seulement la première occurrence.
s.translate(str.maketrans('ACGT', 'TGCA')) : renvoie la chaîne avec les A
remplacés par des T, les C par des G, etc (maketrans construit une table de
traduction des 255 caractères)
s.translate(None, '\n') : enlève les retours chariots, sans affecter s.
s.translate(None, 'aeiouy') : enlève les voyelles.
str.split(s) : retourne une liste de chaînes en coupant sur les caractères blancs
(espace, tabulation, retours chariot). Si s est vide, la liste est vide.
on peut aussi faire s.split(). Par exemple, ' a b c '.split() donne ['a', 'b',
'c']. Donc attention, split se comporte différemment sans argument ou avec une
chaîne ayant un espace :
o ' a b'.split(' ') : renvoie ['', 'a', '', 'b']
o ' a b'.split() : renvoie ['a', 'b'] : les chaines vides sont éliminés !
s.split('\t') : splitte sur les tabulations, et se comporte bien par défaut si à la
fin de la chaîne, il y a des tabulations consécutives (contrairement à perl).
Attention, c'est une chaîne qui est utilisée et non un pattern pour indiquer où
couper.
str.split(s, 'a') : splitte sur les "a" (chaîne). Si s est vide, la liste comporte un
élément, la chaîne vide.
sep.join(stringList) : concatène les chaînes stringList avec la chaîne sep
comme séparateur.
s.strip() : retourne un chaîne avec les espaces à gauche et à droite retirés
(trim), y compris les retours chariot (sinon, rstrip ou lstrip pour un seul côté).
s.strip('a') : retourne une chaîne avec les 'a' des deux côtés enlevés (pareil
avec lstrip et rstrip)
s.center(15) : retourne une chaîne de longueur 15 avec des espaces pour
centrer la chaîne (si s est de longueur > 15, retourn s). s.center(15, '-') : utilise
'-' au lieu d'un espace.