Avec Python split, le langage de pro­gram­ma­tion Internet vous permet de frac­tion­ner des chaînes de ca­rac­tères à des points fixes. Vous pouvez définir les modalités de ce frac­tion­ne­ment en détail à l’aide des deux pa­ra­mètres separator et maxsplit.

Hé­ber­ge­ment Web
Hé­ber­ge­ment Web de pointe au meilleur prix
  • 3x plus rapide, 60 % d'éco­no­mie
  • Haute dis­po­ni­bi­lité >99,99 %
  • Seulement chez IONOS : jusqu'à 500 Go inclus

Qu’est-ce que Python split ?

Dans certains cas, il peut s’avérer utile, voire né­ces­saire, de découper une chaîne Python. La méthode ap­pro­priée est Python split. Le frac­tion­ne­ment est gé­né­ra­le­ment opéré sur les espaces d’une chaîne de ca­rac­tères et peut être géré à l’aide de dif­fé­rents pa­ra­mètres. Python split s’utilise sous dif­fé­rentes formes, chacune adaptée en fonction de l’ap­pli­ca­tion.

Syntaxe et mode de fonc­tion­ne­ment de Python split

La syntaxe fon­da­men­tale de Python split est la suivante :

string.split(separator, maxsplit)

separator et maxsplit sont les deux pa­ra­mètres qui peuvent être utilisés en option. En l’absence d’un paramètre spécifié, Python split frac­tionne la chaîne de ca­rac­tères cor­res­pon­dante à chaque espace in­di­vi­duel. Le paramètre separator spécifie la chaîne à de ca­rac­tères à frac­tion­ner. Le frac­tion­ne­ment cor­res­pon­dant est opéré à chacune de ses oc­cur­rences. Vous pouvez utiliser maxsplit pour spécifier la fréquence de frac­tion­ne­ment de la chaîne. Si vous ne spécifiez pas ce paramètre, le programme ef­fec­tuera un nombre infini de frac­tion­ne­ments.

Exemples simples de Python split avec separator

Ces trois exemples simples per­met­tent d’illustrer comment une chaîne de ca­rac­tères peut être frac­tion­née avec Python split. Vous trouverez la structure fon­da­men­tale du code dans un tutoriel Python.

Frac­tion­ner au niveau des espaces

Dans le premier code, la chaîne est nor­ma­le­ment frac­tion­née au niveau des espaces. Le code cor­res­pon­dant est le suivant :

text = "Ceci est un exemple"
print(text.split())

La sortie cor­res­pon­dante se présente comme suit :

["Ceci", "est", "un", "exemple"]

Frac­tion­ner au niveau des virgules

Dans le deuxième exemple, vous frac­tion­nez la chaîne de ca­rac­tères au niveau des virgules. Voici la commande ap­pro­priée :

animaux = "chien, chat, souris, cheval"
print(animaux.split(", " ))

La sortie suivante s’affiche :

["chien", "chat", "souris", "cheval"]

Frac­tion­ner au niveau du dièse

Vous pouvez également utiliser un dièse pour séparer les termes les uns des autres et opérer ainsi un frac­tion­ne­ment. Vous affectez la valeur x à Python split. Voici le code cor­res­pon­dant :

farbstring = "bleu#rouge#jaune#orange"
couleurs = farb_string.split("#")
print (couleurs)

La sortie s’apparente ensuite à ceci :

["bleu", "rouge", "jaune", "orange"]

Dé­fi­nis­sez maxsplit pour Python split

Le second paramètre maxsplit fonc­tionne de manière similaire. Ces trois exemples en il­lustrent le fonc­tion­ne­ment :

maxsplit par 0

Dans le premier exemple, nous avons défini maxsplit par 0 :

couleurs = "bleu, rouge, jaune, orange"
print(couleurs.split(", ", 0))

Le résultat se présente ensuite comme suit :

["bleu, rouge, jaune, orange"]

maxsplit par 1

Si vous dé­fi­nis­sez maxsplit par 1, le résultat sera modifié. Voici le code :

couleurs = "bleu, rouge, jaune, orange"
print(couleurs.split(", ", 1))

Voici la sortie après Python split :

["bleu", "rouge, jaune, orange"]

maxsplit par 2

Pour un double frac­tion­ne­ment, dé­fi­nis­sez maxsplit par 2 et exécutez Python split. Voici le code approprié :

couleurs = "bleu, rouge, jaune, orange"
print(couleurs.split(", ", 2))

Le résultat est le suivant :

["bleu", "rouge", "jaune, orange"]

Python split au sein de mots isolés

Si la variante par défaut d’un frac­tion­ne­ment est opérée sur des virgules ou des espaces, vous pouvez également frac­tion­ner des chaînes de ca­rac­tères au sein de mots spé­ci­fiques. Dans l’exemple suivant, nous reprenons nos noms d’animaux et les frac­tion­nons sur la base de la lettre a. Cela fonc­tionne comme suit :

animaux = "chien, chat, souris, cheval"
print(animaux.split("a"))

La sortie semble in­ha­bi­tuelle, mais fonc­tionne comme prévu :

["chien, ch", "t, souris, chev", "l"]

Si vous ajoutez le paramètre maxsplit et limitez le nombre de fractions à 1, le résultat suivant apparaît :

animaux = "chien, chat, souris, cheval"
print(animaux.split("a", 1))
["chien, ch", "t, souris, cheval"]

Convertir une chaîne en liste avec Python split

Une fonc­tion­na­lité populaire et souvent très utile de Python split est la con­ver­sion d’une chaîne en une liste Python. Vous devez faire appel aux deux pa­ra­mètres separator et maxsplit à cet effet. Dans l’exemple suivant, notre liste de couleurs est frac­tion­née au niveau des dièses et organisée par maxsplit en une liste composée au maximum de deux éléments. Pour cela, nous avons défini maxsplit par la valeur 1. Le code cor­res­pon­dant se présente comme suit :

farb_string = "bleu#rouge#jaune#orange"
couleurs = farb_string.split("#", 1)
print(couleurs)

Nous obtenons la sortie suivante :

["bleu", "rouge#jaune#orange"]

La dif­fé­rence entre Python split et rsplit

Outre Python split, la méthode rsplit se propose également à vous. Elle est similaire à la variante présentée ici et retourne ef­fec­ti­ve­ment le même résultat précis dans de nom­breuses ap­pli­ca­tions. En par­ti­cu­lier, si le paramètre fa­cul­ta­tif maxsplit n’est pas spécifié, la sortie est identique. Si vous dé­fi­nis­sez toutefois le paramètre separator par None, en le laissant vide, et si vous dé­fi­nis­sez maxsplit par 2, vous ob­ser­ve­rez une dif­fé­rence :

animaux = "chien, chat, souris, cheval"
print(animaux.split(None, 2))

Voici la sortie avec Python split :

["chien", "chat", "souris, cheval"]

Python split divise ainsi la chaîne à partir de la gauche. Si vous utilisez main­te­nant rsplit avec le code suivant :

animaux = "chien, chat, souris, cheval"
print(animaux.rsplit(None, 2))

vous obtenez cette sortie :

["chien, chat", "souris", "cheval"]

Le frac­tion­ne­ment avec rsplit est donc exercé sur la droite.

Aller au menu principal