Die Split-Funktion trennt und listet eine Zeichenfolge mit Zahlen, Alphabeten, Symbolen usw. nach einer bestimmten Regel auf. Das Schreiben eines Programms, das Zeichenfolgen von Grund auf trennt, kann sehr umständlich sein, und für Anfänger kann es eine entmutigende Aufgabe sein, die einen Tag dauern kann, wenn Sie nicht gut darin sind, sie zu schreiben. Die Split-Funktion ist eine sehr praktische Funktion, die Sie von dieser Komplexität befreit. Nur zu wissen, dass dies Ihre Arbeitseffizienz erheblich verändert.
Inhaltsverzeichnis 1 [Grundlegende Verwendung der Split-Funktion](## Grundlegende Verwendung der Split-Funktion) 2 [Anwendung des Trennzeichens](## Anwendung des Trennzeichens) 3 [rsplit-Funktion](## rsplit-Funktion)
Betrachten Sie beispielsweise den Fall, in dem die von Ihnen erstellten Daten durch "," getrennt sind (siehe unten).
>>> print test
orange,apple,banana,strawberry
Sie können eine durch Trennzeichen getrennte Liste erhalten, indem Sie den Zeichenfolgennamen .split ("Trennzeichen") verwenden.
>>> test.split(",") #Der Listenbegrenzer "Test",Getrennt durch
['orange', 'apple', 'banana', 'strawberry']
Wenn das Trennzeichen ein Leerzeichen, ein Zeilenumbruch oder eine Registerkarte ist, können Sie es auch trennen, ohne ein Trennzeichen anzugeben.
>>> test = "orange apple banana strawberry"
>>> test.split() #Wenn im Argument nichts angegeben ist, wird es automatisch durch Leerzeichen oder Tabulatoren getrennt.
['orange', 'apple', 'banana', 'strawberry']
Wenn Sie dies beispielsweise verwenden, können Sie das Trennzeichen auch dann sauber teilen, wenn das Leerzeichen zwei Leerzeichen enthält.
>>> test = "2016 November 15" #Es ist durch zwei Leerzeichen getrennt.
>>> test.split() #
['2016', 'November', '15']
Selbst wenn zwischen den Zeichen, die Sie auf diese Weise teilen möchten, mehrere Trennzeichen vorhanden sind, können Sie diese problemlos verarbeiten.
Wenn Sie etwas überfülltes tun möchten, z. B. "Bis zur zweiten trennen, die dritte und die nachfolgenden nicht trennen", können Sie Folgendes tun.
>>> test = "orange,apple,banana,strawberry"
>>> test.split(",", 2) #Teilen Sie bis zum zweiten Mal und nicht nach dem dritten Mal.
['orange', 'apple', 'banana,strawberry']
Was ist dann, wenn Sie nur den ersten trennen möchten, ohne das Trennzeichen anzugeben? Als ich beispielsweise Folgendes versuchte, wurde eine Fehlermeldung angezeigt.
>>> test = "2016 November 15" #Es ist durch zwei Leerzeichen getrennt.
>>> test.split(1) #Ich wollte nur den ersten trennen. .. ..
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: expected a character buffer object
In Python-Begriffen scheint das erste Argument der Split-Funktion ohne Trennzeichen nutzlos zu sein.
In diesem Fall bedeutet "Keine", dass der Benutzer das Trennzeichen nicht explizit angibt.
>>> test = "2016 November 15" #Es ist durch zwei Leerzeichen getrennt.
>>> test.split(None,1)
['2016', 'November 15']
Auf diese Weise konnte ich nur den ersten erfolgreich teilen.
Wir werden auch die rsplit-Funktion einführen, die eine Schwesterbeziehung zur split-Funktion hat. rsplit ist im Grunde dasselbe wie split. Split hat jedoch eine Trennzeichenreihenfolge vom Anfang der Zeichenfolge, während rsplit eine Trennzeichenreihenfolge vom Ende der Zeichenfolge hat. Abgesehen davon scheint das "r" in rsplit von rechts zu kommen, was bedeutet, von der rechten Seite der Saite, oder von hinten, was bedeutet, nach.
Lass uns gehen.
>>> test = "orange,apple,banana,strawberry"
>>> test.rsplit(",") # “,Trennen mit “. Die Anzahl der Abteilungen ist unbegrenzt.
['orange', 'apple', 'banana', 'strawberry']
Wenn auf diese Weise nur das Trennzeichen für das Argument von rsplit angegeben wird, ist die Funktion rsplit = split function. Fügen Sie nun die Anzahl der Trennzeichen als Argument hinzu (= 2).
>>> test = "orange,apple,banana,strawberry"
>>> test.rsplit(",",2)
['orange,apple', 'banana', 'strawberry']
Sie können sehen, dass die zweite von hinten sicherlich getrennt ist.
Außerdem muss das Trennzeichen kein Zeichen sein. Die Funktionen split und rsplit funktionieren problemlos mit Strings.
>>> test = "orangehogeapplehogebananahogestrawberry"
>>> test.split("hoge") #Der String Hoge entspricht dem Trennzeichen
['orange', 'apple', 'banana', 'strawberry']
Recommended Posts