Schreiben Sie bei einer gegebenen Liste ein Python-Programm, um die gegebene Liste in einen String umzuwandeln. Es gibt verschiedene Situationen, denen wir begegnen können, wenn eine Liste angegeben wird und wir sie in Python in einen String konvertieren.
Beispielsweise die Konvertierung einer Liste von Zeichenfolgen oder einer Liste von Ganzzahlen in eine Zeichenfolge.
Beispiel
Input: ['Geeks', 'for', 'Geeks'] Output : Geeks for Geeks Explanation: The Input is of list data type but the output is of string datatype>
Programm zum Konvertieren einer Liste in einen String
- Verwendung einer for-Schleife
- Verwendung der .join()-Methode
- IN Singlistenverständnis
- Verwenden von map() Funktion
- Verwendung der Aufzählungsfunktion
- Verwendung im Operator
- Verwendung der Methode functools.reduce
- Verwendung der str.format-Methode
- Rekursion verwenden
Konvertieren Sie die Python-Liste mithilfe der for-Schleife in einen String
Durchlaufen Sie die Liste mit for-Schleife und fügen Sie weiterhin das Element für jeden Index in einer leeren Zeichenfolge hinzu, und so wird die endgültige Zeichenfolge, die wir haben, vom Datentyp „String“ sein
Python3
# Python program to convert a list to string> def> listToString(s):> ># initialize an empty string> >str1>=> ''> ># traverse in the string> >for> ele>in> s:> >str1>+>=> ele> ># return string> >return> str1> # Driver code> s>=> [>'Geeks'>,>'for'>,>'Geeks'>]> print>(listToString(s))> |
>
>Ausgabe
techcodeview.com>
Zeitkomplexität: An)
Hilfsraum: An)
Konvertieren Sie die Python-Liste in einen String mit der Methode join()
Funktion listToString(s), die eine Liste s als Eingabe akzeptiert. Innerhalb der Funktion wird eine leere Zeichenfolge str1 initialisiert. Der Funktion join() gibt dann das Ergebnis der Zusammenführung der Elemente der Eingabeliste s zu einer einzigen Zeichenfolge zurück, wobei das Leerzeichen als Trennzeichen verwendet wird. Der Treibercode initialisiert eine Liste s, ruft die Funktion listToString(s) auf und gibt das Ergebnis der Verknüpfung der Listenelemente mit Leerzeichen aus.
Hinweis: Was aber, wenn die Liste sowohl einen String als auch eine Ganzzahl als Element enthält? In diesen Fällen funktioniert der obige Code nicht. Wir müssen es beim Hinzufügen zum String in einen String konvertieren.
Python3
# Function to convert> def> listToString(s):> ># initialize an empty string> >str1>=> ' '> ># return string> >return> (str1.join(s))> > > # Driver code> s>=> [>'Geeks'>,>'for'>,>'Geeks'>]> print>(listToString(s))> |
>
>Ausgabe
Geeks for Geeks>
Zeitkomplexität: An)
Hilfsraum: An)
Konvertieren Sie eine Liste mithilfe des Listenverständnisses in einen String
Hier werden wir verwenden Listenverständnis um eine Liste in eine Zeichenfolge umzuwandeln, wie der folgende Code die Implementierung zeigt
Python3
# Python program to convert a list to string using list comprehension> s>=> [>'I'>,>'want'>,>4>,>'apples'>,>'and'>,>18>,>'bananas'>]> # using list comprehension> listToStr>=> ' '>.join([>str>(elem)>for> elem>in> s])> print>(listToStr)> |
>
>Ausgabe
I want 4 apples and 18 bananas>
Zeitkomplexität : Die zeitliche Komplexität des Programms beträgt O(n), wobei n die Länge der Liste s ist, da jedes Element der Liste einmal durchlaufen wird.
Raumkomplexität: Die Hilfsraumkomplexität des Programms beträgt O(n) weil es mithilfe eines Listenverständnisses eine neue Liste von Zeichenfolgen erstellt.
Konvertieren Sie eine Liste mit der Funktion „map()“ in einen String
Benutzen Sie die map()-Methode zum Zuordnen von str (zum Konvertieren von Elementen in der Liste in einen String) mit dem angegebenen Iterator, der Liste. Wie unten gezeigt, ist der Code die Implementierung mithilfe der Funktion „map()“.
Python3
# Python program to convert a list to string using list comprehension> > s>=> [>'I'>,>'want'>,>4>,>'apples'>,>'and'>,>18>,>'bananas'>]> # using list comprehension> listToStr>=> ' '>.join(>map>(>str>, s))> print>(listToStr)> |
>
>Ausgabe
I want 4 apples and 18 bananas>
Zeitkomplexität : Der T Die Komplexität dieses Codes beträgt O(n), wobei n die Länge der Liste s ist.
Raumkomplexität: Die räumliche Komplexität dieses Codes beträgt O(n), wobei n die Länge der Liste s ist.
Liste zu String verwenden Aufzählungsfunktion
Der Code wandelt die Elemente der Liste in eine einzelne Zeichenfolge um und trennt sie durch Leerzeichen. Es durchläuft die Elemente von s, wandelt jedes Element in einen String um und verbindet sie mithilfe eines Leerzeichens. Die resultierende Zeichenfolge wird dann gedruckt.
Python3
s>=> [>'I'>,>'want'>,>4>,>'apples'>,>'and'>,>18>,>'bananas'>]> listToStr>=> ' '>.join([>str>(elem)>for> i,elem>in> enumerate>(s)])> print>(listToStr)> |
>
>Ausgabe
I want 4 apples and 18 bananas>
Zeitkomplexität: An)
Hilfsraum: An)
Liste mit einem String verwenden im Betreiber
Der Code durchläuft jedes Element i in der Liste s und gibt es aus. Das end= gibt an, dass nach jedem Element ein Leerzeichen anstelle eines Zeilenumbruchzeichens gedruckt werden soll, was dazu führt, dass die Elemente durch Leerzeichen getrennt in derselben Zeile gedruckt werden.
Python3
s>=> [>'Geeks'>,>'for'>,>'Geeks'>]> for> i>in> s:> >print>(i,end>=>' '>)> |
>
>Ausgabe
Geeks for Geeks>
Zeitkomplexität: An)
Hilfsraum: An)
Konvertieren Sie eine Liste in Verwendung der Methode functools.reduce
Der Code verwendet die Funktion „reduce()“ aus dem functools-Modul um die Elemente der Liste s zu einer einzigen Zeichenfolge zusammenzufassen. Es wendet die Lambda-Funktion Lambda a, b: a + + str(b) an, um jedes Element b sequentiell mit dem vorherigen Ergebnis a zu verketten. Die resultierende Zeichenfolge wird dann gedruckt.
Python
from> functools>import> reduce> s>=> [>'I'>,>'want'>,>4>,>'apples'>,>'and'>,>18>,>'bananas'>]> listToStr>=> reduce>(>lambda> a, b : a>+> ' '> +>str>(b), s)> print>(listToStr)> |
>
>Ausgabe
I want 4 apples and 18 bananas>
Zeitkomplexität: Die zeitliche Komplexität des bereitgestellten Python-Codes beträgt O(n), wobei n die Anzahl der Elemente in der Eingabeliste ist
Raumkomplexität: Die räumliche Komplexität des Codes beträgt O(n), wobei n die Anzahl der Elemente in der Eingabeliste s ist.
Mit der Methode str.format in String auflisten
Ein weiterer Ansatz zum Konvertieren einer Liste in einen String in Python ist die Verwendung von str.format-Methode . Mit dieser Methode können Sie eine Zeichenfolgenvorlage angeben und dann die Platzhalterwerte mit den Elementen in der Liste füllen.
Zum Beispiel:
Python3
lst>=> [>'Geeks'>,>'for'>,>'Geeks'>]> # Convert the list to a string using str.format> result>=> '{} {} {}'>.>format>(>*>lst)> print>(result)># Output: Geeks for Geeks> #This code is contributed by Edula Vinay Kumar Reddy> |
>
>Ausgabe
Geeks for Geeks>
Dieser Ansatz hat den Vorteil, dass mithilfe der Formatierungsplatzhalter in der Zeichenfolgenvorlage genau angegeben werden kann, wie die Elemente in der Liste formatiert werden sollen. Sie können beispielsweise die Anzahl der Dezimalstellen für Gleitkommazahlen oder die Breite und Ausrichtung der Ausgabezeichenfolge angeben.
Logik erster Ordnung
Python3
lst>=> [>1.2345>,>'good'> ,>3.4567>]> # Convert the list to a string using str.format> result>=> '{:.2f} {} {:.2f}'>.>format>(>*>lst)> print>(result)># Output: 1.23 2.35 3.46> #This code is contributed by Edula Vinay Kumar Reddy> |
>
>Ausgabe
1.23 good 3.46>
Zeitkomplexität: Die zeitliche Komplexität der oben genannten Ansätze hängt von der Länge der Liste ab. In Methode 1 durchlaufen wir beispielsweise die Liste und fügen jedes Element einer Zeichenfolge hinzu, sodass die Zeitkomplexität O(n) beträgt, wobei n die Länge der Liste ist.
In ähnlicher Weise beträgt die Zeitkomplexität anderer Methoden ebenfalls O(n).
Raumkomplexität: Die räumliche Komplexität aller oben genannten Methoden beträgt ebenfalls O(n), da wir eine neue Zeichenfolge der Größe n erstellen, um die Elemente der Liste zu speichern.
Konvertieren Sie die Python-Liste in einen String mit Rekursion
Der Code rekursiv wandelt eine Liste l in ein String-Wort um, indem ihre Elemente verkettet werden. Es beginnt am Startindex, hängt das aktuelle Element an das Wort an und setzt den Vorgang fort, bis das Ende der Liste erreicht ist. Die resultierende Zeichenfolge wird dann gedruckt.
Python3
def> list_string(start, l, word):> >if> start>=>=> len>(l):> >return> word># base condition to return string> >word>+>=> str>(l[start])>+>' '> # concatenating element in list to word variable> >return> list_string(start>+>1>, l, word)># calling recursive function> # Driver code> l>=> [>'Geeks'>,>'for'>,>'Geeks'>]># defining list> print>(list_string(>0>, l, ''))> |
>
>Ausgabe
Geeks for Geeks>