Diviser et analyser une chaîne en Python
Dans Python, travailler avec des chaînes est un aspect fondamental de la programmation. Cordes sont des séquences de caractères et contiennent souvent des données structurées qui doivent être traitées ou analysées. Les opérations courantes effectuées sur les chaînes sont le fractionnement et l'analyse.
Fractionner une chaîne en Python
En Python, vous pouvez diviser une chaîne en parties plus petites à l'aide de la commande split()> méthode et Le split()> La méthode prend un délimiteur comme argument et coupe la chaîne à chaque occurrence du délimiteur renvoyant une liste de sous-chaînes.
Syntaxe :
string.split (délimiteur)
Paramètres:
-
delimiter>: Le caractère ou la sous-chaîne à laquelle la chaîne sera divisée. C'est un paramètre facultatif.
Valeur de retour :
Le split()> méthode renvoie une liste de sous-chaînes obtenues en cassant la chaîne d'origine aux occurrences du délimiteur.
Méthode str.split()
Cette méthode divise une chaîne en une liste de sous-chaînes en fonction d'un délimiteur spécifié. La chaîne Bonjour, bienvenue sur techcodeview.com en utilisant la virgule («, ») comme délimiteur. Le fonction split() sépare la chaîne en une liste de sous-chaînes à l'aide d'un délimiteur, ce qui donne la liste A contenant [Bonjour, bienvenue sur techcodeview.com].
Exemple :
Python
# Define a string containing> string> => 'Hello,Welcome,to,techcodeview.com'> # Use the split() method to split the string into> A> => string.split(> ','> )> # Print the resulting list> print> (A)> |
Sortir :
['Hello', 'Welcome', 'to', 'techcodeview.com']
Méthode str.rsplit()
Ceci est similaire à str.split() , mais il se sépare du côté droit de la chaîne. Le code donné utilise la fonction rsplit() pour diviser la chaîne S en deux parties en fonction de la dernière occurrence de la virgule (','). Le résultat est une liste contenant les parties avant et après la scission. Un sera ['Bonjour au monde', 'Python'] où la dernière partie séparée par des virgules Python est le séparé du reste de la chaîne Bonjour au monde .
Exemple :
Python
# Given string> S> => 'Hello,to,World,Python'> A> => S.rsplit(> ','> ,> 1> )> # Printing the result> print> (A)> |
Sortir :
['Hello,to,World', 'Python']
Méthode str.splitlines()
Cette méthode divise une chaîne au niveau des sauts de ligne et renvoie une liste des lignes. Le code définit une chaîne M avec les trois lignes de texte séparées par des caractères de nouvelle ligne. Il utilise ensuite le Méthode splitlines() pour diviser la chaîne en une liste appelée ligne et où chaque élément représente une ligne de la chaîne d'origine. Enfin, le code imprime le contenu de la liste des lignes.
Exemple :
Python
# Define a string with three lines of> # text separated by newline characters> M> => 'GFG 1
GFG 2
GFG 3'> # Use the splitlines() method to split> line> => M.splitlines()> print> (line)> |
Sortir :
['GFG 1', 'GFG 2', 'GFG 3']
Méthode str.partition()
Cette méthode divise une chaîne en trois parties en fonction de la première occurrence d'un séparateur. Le code utilise le cloison() méthode pour diviser la chaîne Text à la première occurrence du séparateur. Il attribue la partie avant le séparateur à la variable avant, le séparateur lui-même à la variable sep et la partie après le séparateur à la variable après.
Exemple :
Python
# Input string> Text> => 'Mango,Orange,apple'> before, sep, after> => Text.partition(> ','> )> # Printing the part of the string before the separator> print> (before)> print> (after)> |
Sortir :
Mango Orange,apple
Méthode re.split()
Le module re fournit un fractionnement de chaînes plus puissant à l'aide des expressions régulières. Le code utilise le re.split() fonction du module re en Python pour diviser la chaîne de texte en fonction de la présence de chiffres. Il crée une liste P où les éléments sont des sous-chaînes du Texte séparées par des chiffres. Le résultat serait ['Mango,Orange', 'Banana'] montrant que la chaîne a été divisée au chiffre « 1 ».
Exemple :
Python
import> re> # Input text containing a mix of> # alphabetic characters and digits> Text> => 'Mango,Orange1Banana'> P> => re.split(r> 'd'> , Text)> # Printing the resulting list of substrings> print> (P)> |
Sortir :
['Mango,Orange', 'Banana']
Utiliser la compréhension de liste
Vous pouvez utiliser compréhension de liste pour diviser une chaîne et filtrer les chaînes vides. Le code divise la chaîne Text par les virgules à l'aide du split(',') puis utilise une compréhension de liste pour créer une liste P contenant les parties non vides après avoir supprimé tout espace de début ou de fin. La sortie est la liste P contenant ['Mangue', 'Orange', 'Banane']. Ce code supprime efficacement les parties vides du résultat divisé et supprime tous les espaces supplémentaires.
Exemple :
Python
# Given input string> Text> => 'Mango,Orange,Banana'> # Split the input string by commas and filter out empty parts using list comprehension> P> => [part> for> part> in> Text.split(> ','> )> if> part.strip()]> # print> print> (P)> |
Sortir :
['Mango', 'Orange', 'Banana']
Dans Python , L'analyse d'une chaîne fait référence à l'extraction d'informations significatives de la chaîne donnée et ce processus implique la conversion de la chaîne dans le type de données souhaité ou l'extraction de modèles de données spécifiques de la chaîne.
Conversion en nombre entier ou flottant
Si la chaîne contient des données numériques. vous pouvez l'analyser en un type de données entier ou flottant en utilisant le int()> et float()> fonctions, respectivement. Le code donné convertit une chaîne 52 en entier et imprime le résultat (52). De même, il convertit la chaîne 4.17 en nombre à virgule flottante et imprime le résultat (4.17). Ceci démontre l'utilisation des fonctions int() et float() pour convertir des chaînes en types de données numériques correspondants en Python.
Python
# Convert a string to an integer> number_str> => '52'> number_int> => int> (number_str)> print> (number_int)> # Convert a string to a floating-point number> decimal_str> => '4.17'> decimal_float> => float> (decimal_str)> print> (decimal_float)> |
Sortir :
52 4.17
Conclusion
En utilisant ces méthodes mentionnées ci-dessus, vous pourrez diviser et analyser une chaîne. Nous explorerons également comment convertir un entier en float et en utilisant la méthode split() comment diviser une chaîne en parties plus petites basé sur un délimiteur.