Comment diviser une chaîne en Python (délimiteurs et Maxsplit)
Apprenez à diviser une chaîne en une liste en Python à l'aide de la méthode split(). Explorez le fractionnement par espaces, virgules, nouvelles lignes et limitez le nombre de fractionnements.
Aperçu
Le fractionnement de chaînes est l’une des opérations de traitement de texte les plus courantes. Que vous analysiez un fichier CSV, scindiez des journaux, traitiez les entrées de l'utilisateur ou extrayiez des mots d'un document, les méthodes de chaîne intégrées de Python rendent cette tâche triviale. La méthode clé pour cela est `.split()`, qui divise une chaîne en une liste de sous-chaînes.
Par défaut, appeler `split()` sans aucun argument divise la chaîne par n'importe quel espace (espaces, tabulations, nouvelles lignes) et supprime les espaces consécutifs. Si vous devez partitionner une chaîne en fonction d'un caractère spécifique, tel qu'une virgule dans les données CSV, vous transmettez ce caractère comme séparateur (par exemple, `text.split(",")`).
La méthode `split()` accepte également un deuxième paramètre facultatif appelé `maxsplit`. Ceci détermine le nombre maximum de fractionnements à effectuer. Le reste de la chaîne est renvoyé comme élément final de la liste, ce qui est très utile lorsque vous souhaitez analyser uniquement les premiers jetons d'une commande ou d'un message.
Sortie de code et d'exécution
Ce script montre le fractionnement de chaînes à l'aide de délimiteurs par défaut, de délimiteurs personnalisés et la limitation des fractionnements à l'aide de maxsplit.
sentence = "Python is fun to learn"
csv_data = "apple,banana,orange,grape"
# 1. Split by whitespace (default)
words = sentence.split()
print("Whitespace split:", words)
# 2. Split by comma separator
fruits = csv_data.split(",")
print("Comma split:", fruits)
# 3. Using maxsplit parameter
limited_split = csv_data.split(",", maxsplit=2)
print("Maxsplit of 2:", limited_split)Whitespace split: ['Python', 'is', 'fun', 'to', 'learn']
Comma split: ['apple', 'banana', 'orange', 'grape']
Maxsplit of 2: ['apple', 'banana', 'orange,grape']Mise en œuvre étape par étape
- Appelez la méthode .split() sur la variable chaîne.
- Transmettez une chaîne de séparation telle que ',' ou '\n' à diviser par un délimiteur personnalisé.
- Utilisez l'argument maxsplit pour arrêter le fractionnement après un nombre spécifique d'éléments.
Foire aux questions
Comment split() gère-t-il les espaces consécutifs ?
Par défaut (sans arguments), les espaces consécutifs sont traités comme un seul séparateur. Cependant, si vous transmettez " ", des espaces consécutifs produiront des chaînes vides dans la liste de sortie.
Comment puis-je diviser une chaîne par plusieurs délimiteurs différents ?
Pour diviser par plusieurs délimiteurs (comme des virgules, des espaces et des points-virgules), utilisez des expressions régulières via la fonction re.split().
Sujets connexes
Apprenez à inverser une chaîne en Python à l'aide du découpage, de la fonction reversed() et de la concaténation de boucles avec des exemples de code visuel.
Comment convertir une liste en chaîne en PythonDécouvrez comment convertir des listes de chaînes ou de nombres en une seule chaîne en Python. Maîtrisez la méthode join(), les conversions de cartes et le formatage personnalisé.
Ressources Python recommandées
Développez vos connaissances avec des didacticiels interactifs, des aide-mémoire et des comparaisons de codes associés.
Variables et types de données Python expliqués
Comprendre les variables Python et les types de données de base (chaînes, entiers, flottants, booléens). Un guide complet pour débutants sur l'affectation de mémoire en Python.
Aide-mémoire sur les méthodes de chaîne Python
Un guide de référence complet pour la manipulation des chaînes Python. Maîtrisez le formatage, la recherche, le fractionnement, le remplacement et la vérification des propriétés des chaînes.
Python vs JavaScript : quel langage de programmation est le meilleur ?
Une comparaison complète entre Python et JavaScript. Explorez les différences de syntaxe, les performances, les cas d'utilisation (backend et frontend) et des exemples de codage.