String in Python auflisten lassen
-
String mit der Funktion
str.split()
in Python in eine Liste zerlegen -
String mit der Funktion
str.strip()
in Python in eine Liste zerlegen -
Analysieren Sie den String in eine Liste mit der Funktion
json.loads()
in Python -
Parse String in Liste mit der Funktion
ast.literal_eval()
in Python
In diesem Tutorial lernen wir die Methoden zum Parsen eines Strings in eine Liste in Python kennen.
String mit der Funktion str.split()
in Python in eine Liste zerlegen
Wenn wir in einem Szenario eine Stringdarstellung einer Liste wie '[ "A","B","C" , " D"]'
haben und diese Darstellung in eine tatsächliche Liste von Strings umwandeln möchten, können wir Verwenden Sie die Funktion str.split()
, um den String anhand jedes ,
aufzuteilen. Die Funktion str.split()
nimmt ein Trennzeichen/Trennzeichen als Eingabeparameter, teilt den aufrufenden String anhand des Trennzeichens auf und gibt eine Liste von TeilZeichenketten zurück. Das folgende Codebeispiel zeigt uns, wie man eine String-Darstellung einer Liste mit der Funktion str.split()
in eine tatsächliche Liste umwandelt.
stringlist = '[ "A","B","C" , " D"]'
print(stringlist.split(","))
Ausgabe:
['[ "A"', '"B"', '"C" ', ' " D"]']
Wir haben den String stringlist
in eine Liste umgewandelt, indem wir ihn basierend auf ,
mit der Funktion stringlist.split(",")
aufgeteilt haben. Wie aus der Ausgabe hervorgeht, weist dieser Ansatz mehrere Probleme auf und entspricht nicht richtig unseren Anforderungen.
String mit der Funktion str.strip()
in Python in eine Liste zerlegen
Um einen solchen String weiter in eine Liste umzuwandeln, können wir die Funktion str.strip()
verwenden. Diese Funktion str.strip()
nimmt auch das Trennzeichen/Trennzeichen als Eingabeparameter, entfernt die aufrufende Zeichenkette basierend auf dem Trennzeichen und gibt eine Liste mit viel saubereren TeilZeichenketten zurück. Der folgende Beispielcode zeigt uns, wie man eine String-Darstellung einer Liste mit der Funktion str.strip()
in eine tatsächliche Liste umwandelt.
stringlist = '[ "A","B","C" , " D"]'
print(stringlist.strip(","))
Ausgabe:
[ "A","B","C" , " D"]
Wir haben den String stringlist
in eine Liste umgewandelt, indem wir ihn auf der Basis von ,
mit der Funktion stringlist.split(",")
aufgeteilt haben. Wir bekommen diesmal eine viel sauberere Liste von Saiten. Der einzige Nachteil dieses Ansatzes besteht darin, dass es einige unerwünschte Leerzeichen wie das Leerzeichen im vierten Element der Liste gibt.
Analysieren Sie den String in eine Liste mit der Funktion json.loads()
in Python
Für unser spezielles Problem können wir auch das Modul json
verwenden. Die json.loads()
-Funktion nimmt ein JSON-Objekt als Parameter, deserialisiert das JSON-Objekt und gibt die Ergebnisse in einer Liste zurück. Der JSON-Objektparameter kann in diesem Fall auch ein String sein. Der folgende Beispielcode zeigt uns, wie man eine String-Darstellung einer Liste mit der Funktion json.loads()
in eine tatsächliche Liste umwandelt.
import json
stringlist = '[ "A","B","C" , " D"]'
print(json.loads(stringlist))
Ausgabe:
['A', 'B', 'C', ' D']
Wir haben unseren String stringlist
mit der Funktion json.loads(stringlist)
in Python in eine saubere Liste umgewandelt. Der einzige Unterschied zwischen der Funktion json.loads()
und unseren bisherigen Ansätzen besteht darin, dass wir hier kein Trenn- oder Trennzeichen angeben müssen. Die Funktion json.loads()
bestimmt automatisch das Trennzeichen für uns. Diese Methode enthält auch das Problem unerwünschter Leerzeichen.
Parse String in Liste mit der Funktion ast.literal_eval()
in Python
Eine andere Methode zur Lösung unseres spezifischen Problems ist das Modul ast
. Die ast.literal_eval()
-Funktion nimmt eine String-Darstellung einer Python-Literalstruktur wie Tupel, Wörterbücher, Listen und Mengen an. Wenn wir den String an diese Literalstruktur übergeben, gibt er die Ergebnisse zurück. In unserem Fall haben wir eine String-Darstellung einer Liste. Also nimmt die Funktion ast.literal_eval()
diesen String, parst ihn in eine Liste und gibt die Ergebnisse zurück. Der folgende Codeausschnitt zeigt uns, wie man eine String-Darstellung einer Liste mit der Funktion ast.literal_eval()
in eine tatsächliche Liste umwandelt.
import ast
stringlist = '[ "A","B","C" , " D"]'
print(ast.literal_eval(stringlist))
Ausgabe:
['A', 'B', 'C', ' D']
Wir haben den String stringlist
mit der Funktion ast.literal_eval()
in Python in eine saubere Liste umgewandelt. Ähnlich wie beim vorherigen Ansatz müssen wir kein Trennzeichen oder Trennzeichen angeben. Auch ähnlich dem vorherigen Ansatz weist dieses Verfahren das gleiche Problem unerwünschter Leerzeichen auf. Aber diese Leerzeichen können leicht entfernt werden.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedInVerwandter Artikel - Python String
- Entfernen Kommas aus String in Python
- Wie man prüft, ob eine Zeichenkette auf pythonische Weise leer ist
- Konvertieren einer Zeichenkette in einen Variablennamen in Python
- Wie man Leerzeichen in einem String in Python entfernt
- Wie man in Python Zahlen aus einer Zeichenkette extrahiert
- Wie man in Python String in datetime konvertiert
Verwandter Artikel - Python List
- Alle Vorkommen eines Elements aus einer Liste in Python entfernen
- Konvertieren eines Dictionaries in eine Liste in Python
- Duplikate aus Liste entfernen in Python
- Wie erhält man den Durchschnitt einer Liste in Python
- Was ist der Unterschied zwischen den Listenmethoden append und extend
- Wie man eine Liste in Python in eine Zeichenkette konvertiert