Tranches de ligne

En Python, vous pouvez sélectionner une partie d'une chaîne (sous-chaîne). Pour cela, utilisez l'opération d'obtention d'une tranche (de l'anglais slicing)
La vue générale de l'opération de découpage est la suivante s[start:stop:step] Cette commande prend une tranche de la chaîne s à partir du caractère à l'index start jusqu'au caractère à l'index stop (sans l'inclure) avec step step (si non spécifié, le pas est 1)
Toute partie entre parenthèses peut être manquante.
Par exemple, s1 = s[3:8] signifie que les caractères de 3 à 7 sont copiés dans la chaîne s1 à partir de la chaîne s avec l'étape 1.
Vous pouvez prendre des indices négatifs, puis le compte est à partir de la fin de la chaîne. s = "0123456789" s1 = s[-7:-2] # s1="34567" Si start n'est pas spécifié, il est considéré comme égal à zéro (c'est-à-dire que nous le prenons depuis le début de la chaîne). Si stop n'est pas spécifié, la tranche est prise jusqu'à la fin de la chaîne. s = "0123456789" s1 = s[:4] # s1="0123" s2 = s[-4:] # s2="6789" Voici à quel point il est facile d'inverser une chaîne : s = "0123456789" s1 = s[::-1] # s1="9876543210" Tous les caractères de la chaîne sont itérés par incréments de -1, ce qui signifie que les caractères seront itérés à partir de la fin. La ligne entière est impliquée car les index de début et de fin ne sont pas spécifiés.

Supprimer et coller

Pour supprimer une partie d'une chaîne, vous devez composer une nouvelle chaîne en combinant les parties de la chaîne d'origine avant et après la section à supprimer. s = "0123456789" s1 = s[:3]+s[9:] # s1="0129" En utilisant les tranches et la concaténation de chaînes, vous pouvez insérer une sous-chaîne à l'intérieur d'une chaîne. s = "0123456789" s1 = s[:3]+"ABC"+s[3:] # s1="012ABC3456789"

Méthodes de manipulation de chaînes

Python dispose de nombreuses méthodes (fonctions prêtes à l'emploi) pour travailler avec des chaînes.  Beaucoup d'entre eux sont appelés en utilisant la notation par points et sont appelés méthodes. Une liste complète des méthodes de manipulation de chaînes est disponible en ligne. 
Faisons connaissance avec certains d'entre eux. s = "aAbBcC" sUp = s.upper() # sUp = "AABBCC" - une méthode qui traduit   # majuscule chaque caractère de la chaîne sLow = s.lower() # sLow = "aabbcc" - une méthode qui traduit   # minuscule chaque caractère de la chaîne À gauche du point se trouve le nom de la chaîne (ou la chaîne elle-même entre guillemets) à laquelle la méthode doit être appliquée, et à droite du point se trouve le nom de la méthode. La méthode est toujours écrite entre parenthèses. Il peut y avoir n'importe quel paramètre entre parenthèses si nécessaire.

Auparavant, nous utilisions déjà la méthode de travail avec des chaînes lorsque nous affichions des données à l'écran dans un certain format - la méthode format() un = 4 b = 5 print("{}+{}={}".format(a,b,a+b)) # 4+5=9 Une autre méthode utile  isdigit() est une méthode pour vérifier si tous les caractères d'une chaîne sont des chiffres, elle renvoie une valeur booléenne (True ou False). s = "ab1c" print(s.isdigit()) #Faux s = "123" print(s.isdigit()) #True La méthode utile strip() vous permet de supprimer les espaces au début et à la fin d'une chaîne s = " ab 1c " print('s=', s.strip()) # s=ab 1c

Recherche en ligne

Pour rechercher dans une chaîne en Python, utilisez la méthode find().
Il a trois formes et renvoie l'index de la 1ère occurrence de la sous-chaîne dans la chaîne :
1)  ; find(str) - la sous-chaîne str est recherchée du début à la fin de la chaîne ;
2) find(str, start) - en utilisant le paramètre start , l'index de départ est défini, et c'est à partir de celui-ci que la recherche est effectuée ;< br /> 3) find(str, start, end) - en utilisant le paramètre end , l'index de fin est défini, la recherche est effectuée avant.

Lorsque la sous-chaîne est introuvable, la méthode renvoie -1 :

bienvenue = "Bonjour le monde ! Au revoir le monde!" index = bienvenue.find("wor") print(index) #6 # recherche du 10ème au 15ème index index = bienvenue.find("wor", 10, 15) print(index) # -1 Vous pouvez effectuer une recherche à partir de la fin de la chaîne. Pour cela, la méthode rfind() (de l'anglais reverse find) est utilisée - elle renvoie l'index de la dernière occurrence d'une sous-chaîne dans une chaîne.
 
Remarque : méthodes de données ne cherchez pas le nombre d'occurrences, mais déterminez seulement s'il existe ou non une telle sous-chaîne dans la chaîne.

Remplacer des sous-chaînes dans une chaîne

En Python, pour remplacer une sous-chaîne par une autre dans une chaîne, utilisez la méthode replace() : 
replace(old, new) - la sous-chaîne old est remplacée par new ;
replace(old, new, num) - le paramètre num indique le nombre d'occurrences de la sous-chaîne old remplacée par new >.

 

Exemple
téléphone = "+1-234-567-89-10" # tirets sont remplacés par des espaces edited_phone = phone.replace("-", " ") print(edited_phone) # +1 234 567 89 10 # traits d'union ont été supprimés edited_phone = phone.replace("-", "") print(edited_phone) # +12345678910 # seul le premier trait d'union change edited_phone = phone.replace("-", "", 1) print(edited_phone) # +1234-567-89-10