[Introduction à Python] Comment fractionner une chaîne de caractères avec la fonction split

[Introduction à Python] Comment fractionner une chaîne de caractères avec la fonction split

La fonction de fractionnement sépare et répertorie une chaîne de caractères contenant des nombres, des alphabets, des symboles, etc. selon une certaine règle. Écrire un programme qui sépare les chaînes de zéro peut être très fastidieux, et pour les débutants, cela peut être une tâche ardue qui peut prendre une journée si vous n'êtes pas doué pour l'écrire. La fonction Split est une fonction très pratique qui vous libère d'une telle complexité. Le simple fait de le savoir changera considérablement votre efficacité au travail.

table des matières 1 [Utilisation de base de la fonction de fractionnement](## Utilisation de base de la fonction de fractionnement) 2 [Application du délimiteur](## Application du délimiteur) 3 [fonction rsplit](fonction ## rsplit)

Utilisation de base de la fonction de fractionnement

Par exemple, considérez le cas où les données que vous avez créées sont séparées par "," comme indiqué ci-dessous.

>>> print test
orange,apple,banana,strawberry

Vous pouvez obtenir une liste séparée par des délimiteurs en utilisant le nom de chaîne .split («séparateur»).

>>> test.split(",") #Le délimiteur de liste "test",Séparé par
['orange', 'apple', 'banana', 'strawberry']

En outre, lorsque le délimiteur est un espace, un saut de ligne ou une tabulation, vous pouvez le séparer sans spécifier de délimiteur.

>>> test = "orange apple banana strawberry"
>>> test.split() #Si rien n'est spécifié dans l'argument, il sera automatiquement séparé par des espaces ou des tabulations.
['orange', 'apple', 'banana', 'strawberry']

Si vous l'utilisez, par exemple, même s'il y a deux espaces dans le délimiteur, vous pouvez le diviser proprement.

>>> test = "2016  November  15" #Il est séparé par deux espaces.
>>> test.split() # 
['2016', 'November', '15'] 

Même s'il existe plusieurs délimiteurs entre les caractères que vous souhaitez diviser de cette manière, vous pouvez facilement le gérer avec cela.

Version avancée de la séparation

De plus, si vous voulez faire quelque chose de bondé, par exemple "Séparez jusqu'au deuxième, ne séparez pas le troisième et les suivants", vous pouvez procéder comme suit.

>>> test = "orange,apple,banana,strawberry"
>>> test.split(",", 2) #Divisez jusqu'à la deuxième fois et ne divisez pas après la troisième fois.
['orange', 'apple', 'banana,strawberry']

Ensuite, que se passe-t-il si vous souhaitez séparer uniquement le premier sans spécifier le délimiteur? Par exemple, lorsque j'ai essayé ce qui suit, j'ai eu une erreur.

>>> test = "2016  November  15" #Il est séparé par deux espaces.
>>> test.split(1) #Je voulais séparer uniquement le premier. .. ..
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: expected a character buffer object

En termes Python, le premier argument de la fonction split semble inutile sans un délimiteur.

Dans ce cas, None est utilisé pour signifier "l'utilisateur ne spécifie pas explicitement le délimiteur".

>>> test = "2016  November  15" #Il est séparé par deux espaces.
>>> test.split(None,1)
['2016', 'November  15']

En faisant cela, j'ai réussi à ne diviser que le premier.

fonction rsplit

Nous allons également introduire la fonction rsplit, qui a une relation sœur avec la fonction split. rsplit est fondamentalement le même que split. Cependant, split a un ordre de délimitation à partir du début de la chaîne, tandis que rsplit a un ordre de délimitation à partir de la fin de la chaîne. En aparté, le "r" dans rsplit semble venir de la droite, ce qui signifie du côté droit de la corde, ou de l'arrière, ce qui signifie après.

Allons-y.

>>> test = "orange,apple,banana,strawberry"
>>> test.rsplit(",") # “,Séparez par ". Il n'y a pas de limite au nombre de divisions.
['orange', 'apple', 'banana', 'strawberry']

Si seul le délimiteur est donné à l'argument de rsplit de cette manière, la fonction rsplit = fonction split. Maintenant, ajoutez le nombre de délimiteurs comme argument (= 2).

>>> test = "orange,apple,banana,strawberry"
>>> test.rsplit(",",2)
['orange,apple', 'banana', 'strawberry']

Vous pouvez voir que la seconde de l'arrière est certainement séparée.

De plus, le délimiteur n'a pas besoin d'être un caractère. Les fonctions split et rsplit fonctionnent sans aucun problème avec les chaînes.

>>> test = "orangehogeapplehogebananahogestrawberry" 
>>> test.split("hoge")  #La chaîne hoge correspond au délimiteur
['orange', 'apple', 'banana', 'strawberry']

Recommended Posts

[Introduction à Python] Comment fractionner une chaîne de caractères avec la fonction split
[Introduction à Python] Comment écrire une chaîne de caractères avec la fonction format
[Introduction à Python] Comment itérer avec la fonction range?
[Python] Comment inverser une chaîne de caractères
[Introduction à Python] Comment obtenir des données avec la fonction listdir
[Introduction à Python] Comment générer une chaîne de caractères dans une instruction Print
[Python] Explique comment utiliser la fonction range avec un exemple concret
[Introduction à Python] Comment trier efficacement le contenu d'une liste avec le tri par liste
Comment convertir / restaurer une chaîne avec [] en python
[Python] Comment développer des variables dans une chaîne de caractères
Je veux diviser une chaîne de caractères avec hiragana
[Introduction à Python] Comment obtenir l'index des données avec l'instruction for
Les bases de l'apprentissage Python ~ Comment générer (afficher) une chaîne de caractères ~
[Python 3.8 ~] Comment définir intelligemment des fonctions récursives avec des expressions lambda
Essayez d'extraire une chaîne de caractères d'une image avec Python3
[Introduction à Python] Comment utiliser l'opérateur in dans l'instruction for?
[Python] Explique comment utiliser la fonction format avec un exemple
Comment extraire la chaîne de caractères souhaitée à partir d'une ligne 4 commandes
Comment envoyer une requête à l'API DMM (FANZA) avec python
Comment compter rapidement la fréquence d'apparition des caractères à partir d'une chaîne de caractères en Python?
Comment lire un fichier CSV avec Python 2/3
Comment incorporer des variables dans des chaînes python
Introduction à Python avec Atom (en route)
[Introduction à Udemy Python3 + Application] 47. Traitez le dictionnaire avec une instruction for
[Introduction à Python] Une explication approfondie des types de chaînes de caractères utilisés dans Python!
Comment supprimer la chaîne de caractères spécifiée avec la commande sed! !! !!
[Python] Comment dessiner un graphique linéaire avec Matplotlib
[Circuit x Python] Comment trouver la fonction de transfert d'un circuit en utilisant Lcapy
Comment créer un sous-menu avec le plug-in [Blender]
Comment appeler une fonction
[Python] Comment spécifier l'emplacement de téléchargement avec youtube-dl
#Une fonction qui renvoie le code de caractère d'une chaîne de caractères
[Tentative] Comment convertir une chaîne de caractères en Shift_jis avec kivy-ios Memo kivy v1.8.0
[Introduction à Udemy Python3 + Application] 27. Comment utiliser le dictionnaire
[Introduction à Udemy Python3 + Application] 30. Comment utiliser l'ensemble
[Introduction à Python] Comment arrêter la boucle en utilisant break?
[Python] Comment réécrire le style de table avec python-pptx [python-pptx]
[Python] J'ai essayé d'obtenir le nom du type sous forme de chaîne de caractères à partir de la fonction type
[Python] Comment créer un histogramme bidimensionnel avec Matplotlib
[Python] Comment appeler une fonction de c depuis python (édition ctypes)
Comment saisir une chaîne de caractères en Python et la sortir telle quelle ou dans la direction opposée.
[Python] Comment dessiner un diagramme de dispersion avec Matplotlib
Comment obtenir une liste de fichiers dans le même répertoire avec python
Comment identifier l'élément avec le plus petit nombre de caractères dans une liste Python?
J'ai essayé de générer automatiquement la chaîne de caractères à entrer dans M. Adjustment avec Python
[Python] Ne laissez que les éléments commençant par une chaîne de caractères spécifique dans le tableau
Comment tester unitaire une fonction contenant l'heure actuelle à l'aide de Freezegun en Python
J'ai essayé de simuler la propagation de l'infection avec Python
Comment installer NPI + envoyer un message à la ligne avec python
Comment convertir un tableau en dictionnaire avec Python [Application]
Créez un bot Mastodon avec une fonction pour répondre automatiquement avec Python
Comment utiliser la méthode __call__ dans la classe Python
Probablement le moyen le plus simple de créer un pdf avec Python 3
Comment imprimer des caractères sous forme de tableau avec la fonction d'impression de Python
Comment obtenir la dernière (dernière) valeur d'une liste en Python
Une histoire sur la façon de traiter le problème CORS
Comment créer un environnement de développement de la série Python2.7 avec Vagrant
Comment entrer dans l'environnement de développement Python avec Vagrant
Créer un message correspondant à la localisation avec la chaîne de traduction python
Comment connecter le contenu de la liste dans une chaîne de caractères