Maison  >  Article  >  développement back-end  >  Programme Python pour diviser une chaîne en plusieurs sous-chaînes

Programme Python pour diviser une chaîne en plusieurs sous-chaînes

WBOY
WBOYavant
2023-09-04 19:17:061501parcourir

Programme Python pour diviser une chaîne en plusieurs sous-chaînes

En Python, nous pouvons diviser une chaîne en sous-chaînes en utilisant la méthode split(). La méthode split() est l'une des méthodes de chaîne Python intégrées qui divise une chaîne en une liste de sous-chaînes en fonction d'un délimiteur spécifié. Dans cet article, nous apprendrons comment diviser une chaîne en sous-chaînes à l'aide d'exemples.

Diviser une chaîne en sous-chaînes

Méthode 1 : Utilisez la méthode split()

La méthode

split() est une méthode intégrée de chaînes en Python, qui divise la chaîne en une liste de sous-chaînes en fonction du délimiteur spécifié. Le délimiteur peut être n’importe quel caractère ou chaîne séparant les sous-chaînes. La méthode split() prend un paramètre, le séparateur. Si aucun délimiteur n'est spécifié, la chaîne sera divisée en caractères individuels.

Exemple : fractionnement basé sur des séparateurs d'espace et de virgule

Dans l'exemple ci-dessous, nous diviserons la chaîne à l'aide d'un délimiteur d'espace. Nous utilisons la méthode split() et passons le délimiteur d'espace pour diviser la chaîne en fonction des espaces.

string = "Hello World"
substrings = string.split()
print(substrings)

string1 = "apple,banana,orange"
substrings = string1.split(",")
print(substrings)

Sortie

['Hello', 'World']
['apple', 'banana', 'orange']

Exemple : diviser à l'aide d'expressions régulières

Dans l'exemple ci-dessous, nous utilisons la fonction split() du module d'expression régulière pour diviser la chaîne "23-456-7890" en trois sous-chaînes à l'aide de délimiteurs de tiret et d'espace.

import re

string = "123-456-7890"
substrings = re.split("-|\s", string)
print(substrings)

Sortie

['123', '456', '7890']

Méthode 2 : Utiliser la compréhension de liste

Les compréhensions de listes sont un moyen concis de créer des listes en Python. Il vous permet de créer une nouvelle liste basée sur une liste existante ou un autre objet itérable, tout en appliquant des filtres et en effectuant des transformations sur les éléments de l'itérable.

Grammaire

new_list = [expression for item in iterable if condition]

Où « expression » est la transformation ou l'opération à effectuer sur chaque élément de l'itérable, « item » est l'élément en cours de traitement, « itérable » est la source de l'élément et « condition » est un filtre facultatif qui détermine un certain Conditions pour savoir si les éléments sont inclus dans la liste des résultats.

Exemple

Dans l'exemple ci-dessous, nous commençons par une chaîne appelée « phrase » qui contient une série de mots séparés par des espaces. Nous utilisons la méthode split() pour diviser la chaîne en une liste de mots, puis utilisons une compréhension de liste pour créer une nouvelle liste appelée « mots » qui contient chaque mot de la chaîne d'origine.

sentence = "The quick brown fox jumps over the lazy dog"
words = [word for word in sentence.split()]
print(words)

Sortie

['The', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dog']

Méthode 3 : Utiliser la méthode partition()

La méthode

partition() est une méthode intégrée de chaînes en Python, qui divise la chaîne en trois parties en fonction du délimiteur spécifié. Il renvoie un tuple contenant la partie gauche de la chaîne avant le délimiteur, le délimiteur lui-même et la partie droite de la chaîne après le délimiteur. Si le délimiteur n'est pas trouvé dans la chaîne, la méthode renvoie un tuple contenant la chaîne d'origine, suivi de deux chaînes vides.

Grammaire

string.partition(delimiter)

Ici, string est la chaîne que vous souhaitez diviser et le délimiteur est le délimiteur par lequel vous souhaitez que la fonction de partition divise la chaîne.

Exemple

Dans l'exemple ci-dessous, nous utilisons la méthode partition() pour diviser la chaîne "Hello World!" en trois parties en fonction du délimiteur d'espace. Le tuple résultant contient la partie gauche "Bonjour", le délimiteur "", et la partie droite "Monde!".

string = "Hello World!"
parts = string.partition(" ")
print(parts)

Sortie

('Hello', ' ', 'World!')

Méthode 4 : Utiliser la fonction splitlines()

La méthode

splitlines() est une méthode de chaîne intégrée en Python, qui divise la chaîne en une liste de lignes basée sur le caractère de nouvelle ligne "n". Si la chaîne ne contient aucun retour à la ligne, renvoie une liste contenant la chaîne d'origine comme seul élément.

Grammaire

string.splitlines()

Ici, splitlines() ne prend aucun paramètre et divise toujours la chaîne en fonction des nouvelles lignes.

Exemple

Dans l'exemple ci-dessous, nous utilisons la méthode splitlines() pour diviser la chaîne "Line 1nLine 2nLine 3" en une liste de lignes. La liste résultante contient trois éléments, un pour chaque ligne de la chaîne d'origine.

string = "Line 1\nLine 2\nLine 3"
lines = string.splitlines()
print(lines)

Sortie

['Line 1', 'Line 2', 'Line 3']

Méthode 5 : utilisez la méthode re.findall()

La méthode

re.findall() est une fonction du module re en Python qui recherche dans une chaîne toutes les occurrences d'un modèle d'expression régulière spécifié et renvoie une liste de toutes les correspondances. Les modèles d'expressions régulières peuvent contenir une variété de caractères représentant différents types de caractères ou de séquences, permettant une mise en correspondance de modèles complexes et l'extraction de parties spécifiques d'une chaîne.

Grammaire

re.findall(regular_expression, string)

Ici, la méthode re.findall() utilise une expression régulière pour rechercher les occurrences de mots correspondants dans une chaîne, qui est également transmise à la fonction findall().

Exemple

Dans l'exemple ci-dessous, nous utilisons la méthode re.findall() pour rechercher toutes les occurrences du modèle d'expression régulière bw{5}b dans une chaîne. Ce modèle correspond à n'importe quelle séquence de cinq caractères de mot (lettres, chiffres ou traits de soulignement) entourés par une limite de mot (c'est-à-dire le début ou la fin d'un mot). La méthode re.findall() renvoie une liste de toutes les correspondances trouvées dans une chaîne.

import re

string = "The quick brown fox jumps over the lazy dog"
matches = re.findall(r"\b\w{5}\b", string)
print(matches)

输出

['quick', 'brown', 'jumps']

结论

在本文中,我们讨论了如何在 Python 中使用 split() 函数、使用列表理解、使用分区方法、使用 splitline 方法以及使用 re.findall() 将字符串拆分为多个子字符串方法。 split() 函数采用分隔符作为参数。然后根据该分隔符分割字符串。 splitline 方法始终根据新行分隔符分割字符串。我们可以使用本文中介绍的任何方法,具体取决于我们想要执行的拆分类型。

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer