Chaînes Python - Vue d'ensemble des opérations de base sur les chaînes

Les chaînes sont l'un des types de données de base en Python. Les chaînes Python sont une combinaison de n'importe quel nombre de caractères composé de lettres, de chiffres et d'autres caractères spéciaux. Dans ce didacticiel, vous apprendrez à les créer, à les manipuler et à les mettre en forme pour les utiliser dans différents scénarios.



Créer de nouvelles chaînes en Python

Pour créer une nouvelle chaîne Python, il vous suffit de déclarer une séquence de caractères entre guillemets simples ou doubles. Les guillemets triples sont également utilisés pour les chaînes de plusieurs lignes.

double_quotes = 'My name is John!' single_quotes = 'My name is John!' multi_line_string = '''1. My name is John!



2. I am a programmer'''


Indexation des chaînes

Chaque caractère d'une chaîne Python a un index entier. L'indexation commence à 0 au premier caractère et s'incrémente le long de la chaîne. Vous pouvez utiliser l'index d'un caractère individuel pour récupérer ce caractère de la chaîne comme le montre l'exemple suivant.


myPet = 'Dog not a cat' myPet[0] # 'D' myPet[5] # 'o' myPet[7] # ' ' myPet[12] # 't' # myPet[15] # IndexError

Essayer d'accéder à un caractère au-delà de l'index du caractère final entraîne un IndexError .

Vous pouvez accéder à un caractère dans une chaîne à l'aide d'un index négatif. Dans ce cas, l'indexation commence à partir de -1 au dernier caractère de la chaîne et augmente négativement à mesure que vous reculez.


myPet = 'Dog not a cat' myPet[-1] # 't' myPet[-6] # ' ' myPet[-8] # 'o' myPet[-13] # 'D'

Tranchage de cordes

Le découpage est la méthode d'extraction d'une sous-chaîne (une partie de la chaîne) d'une chaîne. Cette tâche est réalisée à l'aide de l'indexation de chaînes.

myPet = 'Dog not a cat' myPet[5:7] # 'ot' myPet[1:12] # 'og not a ca'

Ici, deux indices sont fournis séparés par deux-points, le premier index indique où commencer le découpage et le deuxième index indique où s'arrêter. La sous-chaîne résultante comprend des caractères de l'index de départ au caractère avant l'index de fin, le caractère de l'index de fin n'est pas inclus dans la sous-chaîne.

Si vous ne fournissez pas l'index de départ, le découpage commence au premier caractère de la chaîne. Si vous ne fournissez pas l'index de fin, le découpage se termine au dernier caractère tout en l'incluant dans la sous-chaîne résultante.

myPet = 'Dog not a cat' myPet[:7] # 'Dog not' myPet[10:] # 'cat' myPet[:] # 'Dog not a cat'

Vous pouvez également fournir des indices négatifs en tant qu'indices de découpage.


myPet = 'Dog not a cat' myPet[10:-1] # 'ca'

Longueur d'une chaîne

La méthode Python intégrée len() renvoie la longueur d'une chaîne.

myPet = 'Dog not a cat' len(myPet) # 13

Itérer à travers une chaîne

Vous pouvez parcourir chaque caractère d'une chaîne en utilisant un for boucle.

Exemple:

name = 'John' for char in name:
print(char) # 'J', 'o', 'h', 'n'


Concaténation de chaînes

La concaténation de chaînes est la jonction de deux ou plusieurs chaînes pour créer une seule chaîne. En Python, il existe plusieurs méthodes pour concaténer des chaînes.


L'un utilise le + opérateur.

str1 = 'Hello' str2 = 'World' concat_str = str1 + str2 # 'HelloWorld' concat_str = str1 + ' ' + str2 # 'Hello World'

Vous pouvez utiliser le * opérateur pour concaténer une chaîne à elle-même autant de fois que nécessaire.

concat_str = str1*3 # 'HelloHelloHello'

Une autre façon de concaténer des chaînes consiste à utiliser join() méthode.

Le join() intégré | est utilisée pour concaténer un tableau de chaînes en utilisant un séparateur commun.


arr = [str1, str2] concat_str = (' ').join(arr) # 'Hello World' concat_str = (',').join(arr) # 'Hello,World'

Dans le code ci-dessus, le premier join() ajoute un espace blanc entre chaque mot du tableau.

Le second join() La méthode insère une virgule entre chaque mot du tableau.



Concaténation de chaînes et d'int

En Python, nous pouvons également concaténer une chaîne en un entier mais pas avec le + opérateur. Si nous essayons d'utiliser le code suivant:

name = 'John' age = 35 print(a + b)

Nous obtiendrions:


Traceback (most recent call last): File 'concat.py', line 5, in
print(a + b) TypeError: can only concatenate str (not 'int') to str
Noter:Vous ne pouvez pas concaténer une chaîne et un entier à l'aide de + opérateur.

Pour éviter cette erreur, nous pouvons utiliser le str() méthode pour convertir l'entier en chaîne, par exemple:

name = 'John ' age = '35' print(a + str(b)) #John 35

Comment diviser une chaîne

Le split() intégré | est utilisée pour diviser une seule chaîne en un tableau de chaînes.

string = 'My name is John' split_arr = string.split(' ') # ['My', 'name', 'is', 'John'] We can also split a string using a separator: string = 'John, Rose, Jack, Mary' split_arr = string.split(', ') # ['John', 'Rose', 'Jack', 'Mary']

Strip - Supprimer les espaces blancs

strip(), la méthode de chaîne intégrée est utilisée pour supprimer les espaces blancs du début et de la fin d'une chaîne.

string = ' Hello, World ' stripper_str = string.strip() # 'Hello, World'

Comme vous pouvez le voir, strip() ne supprime pas les espaces blancs entre les autres caractères mais uniquement aux deux extrémités.

Il existe deux variantes de strip() méthode, bande gauche et bande droite:

  • lstrip()
  • rstrip()

Ces méthodes suppriment les espaces blancs sur le côté gauche et le côté droit de la chaîne, respectivement.

Exemple:

lsplit_str = string.lstrip() # 'Hello, World ' rsplit_str = string.rstrip() # ' Hello, World'

Les méthodes de strip sont particulièrement utiles lors de la lecture des entrées utilisateur, où des espaces blancs supplémentaires pourraient être passés par les utilisateurs.



Formatage d'une chaîne

Python format() méthode est utilisée pour formater une chaîne. Bretelles frisées {} sont utilisés à l'intérieur de la chaîne qui doit être formatée comme espace réservé pour la partie qui doit être remplacée par les arguments fournis au format() méthode.

Exemple:

'Hello, {}'.format('John') # 'Hello, John'

Dans l'exemple ci-dessus {} est remplacé par «John» dans la chaîne formatée.

Vous pouvez utiliser plusieurs accolades à l'intérieur de la chaîne pour formater. Ils sont remplacés par les arguments fournis à format() méthode soit dans l'ordre fourni (si aucun indice de position n'est mentionné à l'intérieur d'accolades) ou dans l'ordre de position.

Exemple:

'I have a {}, {}, and a {}'.format('dog', 'cat', 'rabbit') # 'I have a dog, cat, and a rabbit' 'I have a {1}, {0}, and a {2}'.format('dog', 'cat', 'rabbit') # 'I have a cat, dog, and a rabbit'

Au lieu d'utiliser des index, vous pouvez fournir des arguments de mot-clé à format() afin que ces mots-clés puissent être utilisés entre accolades.

Exemple:

print('{friend} is my friend and {enemy} is my enemy'.format(friend='John', enemy='Jack')) # 'John is my friend and Jack is my enemy'

Le format() La méthode est assez polyvalente car elle peut être utilisée dans de nombreux cas d'utilisation.

Voici quelques autres applications du format() méthode:

arr = [3, 5] 'I have {0[0]} dogs and {0[1]} cats'.format(arr) # 'I have 3 dogs and 4 cats' #convert numbers to different bases 'int: {0:d}; hex: {0:x}; oct: {0:o}; bin: {0:b}'.format(42) # 'int: 42; hex: 2a; oct: 52; bin: 101010'

Convertir une chaîne en minuscules

Utilisation de lower() de Python méthode, vous pouvez convertir une chaîne en minuscules.

Exemple:

string = 'Hello, World!' string.lower() # 'hello, world!'

Convertir une chaîne en majuscules

De même, en utilisant Python upper() méthode, vous pouvez convertir une chaîne en majuscules.

Exemple:

string = 'Hello, World!' string.upper() # 'HELLO, WORLD!'

Conclusion

J'espère qu'avec l'aide de ce tutoriel, vous êtes maintenant familiarisé avec les chaînes Python et comment utiliser diverses méthodes pour les opérations sur les chaînes.

Référence: Documentation sur les chaînes de Python