logo

Python-programma om een ​​lijst naar string te converteren

Schrijf, gegeven een lijst, een Python-programma om de gegeven lijst naar een string te converteren. Er zijn verschillende situaties die we kunnen tegenkomen wanneer een lijst wordt opgegeven en we deze in Python naar een string converteren.

Bijvoorbeeld conversie naar een string uit een lijst met strings of een lijst met gehele getallen.



Voorbeeld

  Input:   ['Geeks', 'for', 'Geeks']   Output  : Geeks for Geeks   Explanation:   The Input is of list data type but the output is of string datatype>

Programma om een ​​lijst naar een string te converteren

  • For-lus gebruiken
  • Met behulp van de .join()-methode
  • IN begrip van de zanglijst
  • Kaart() gebruiken functie
  • Met behulp van de opsomfunctie
  • Gebruik in operator
  • Met behulp van de functools.reduce-methode
  • Met behulp van de str.format-methode
  • Recursie gebruiken

Converteer Python-lijst naar String met behulp van for-lus

Doorloop de lijst met behulp van for loop en blijf het element toevoegen voor elke index in een lege string en zo zal de laatste string die we hebben van het string-datatype zijn

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))>

>

>

Uitvoer

techcodeview.com>

Tijdcomplexiteit: Op)
Hulpruimte: Op)

Converteer Python-lijst naar String met behulp van de join()-methode

Functie listToString(s) die een lijst s als invoer accepteert. Binnen de functie wordt een lege string str1 geïnitialiseerd. De join()-functie retourneert vervolgens het resultaat van het samenvoegen van de elementen van de invoerlijst s tot een enkele string, waarbij de spatie als scheidingsteken wordt gebruikt. De stuurprogrammacode initialiseert een lijst s, roept de functie listToString(s) aan en drukt het resultaat af van het samenvoegen van de lijstelementen met spaties.

Opmerking: Maar wat als de lijst zowel string als geheel getal als element bevat? In die gevallen werkt de bovenstaande code niet. We moeten het naar string converteren terwijl we het aan string toevoegen.

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))>

>

>

Uitvoer

Geeks for Geeks>

Tijdcomplexiteit: Op)
Hulpruimte: Op)

Converteer een lijst naar een tekenreeks met behulp van lijstbegrip

Hier gaan we gebruiken lijst begrip om een ​​lijst naar een string te converteren, zoals de onderstaande code de implementatie laat zien

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)>

>

>

Uitvoer

I want 4 apples and 18 bananas>

Tijdcomplexiteit : De tijdscomplexiteit van het programma is O(n), waarbij n de lengte van de lijst s is, omdat het elk element van de lijst één keer herhaalt.
Ruimtecomplexiteit: De hulpruimtecomplexiteit van het programma is O(n) omdat het een nieuwe lijst met tekenreeksen creëert met behulp van lijstbegrip.

Converteer een lijst naar een string met behulp van de map() functie

Gebruik de kaart() methode voor het in kaart brengen van str (voor het converteren van elementen in de lijst naar string) met de gegeven iterator, de lijst. Zoals onderstaande code laat zien, is de implementatie met behulp van de map() functie

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)>

>

>

Uitvoer

I want 4 apples and 18 bananas>

Tijdcomplexiteit : De T De ime-complexiteit van deze code is O(n), waarbij n de lengte van de lijst s is.
Ruimtecomplexiteit: De ruimtecomplexiteit van deze code is O(n), waarbij n de lengte van de lijst s is.

Lijst naar tekenreeks gebruik makend van functie opsommen

De code converteert de elementen van de lijst naar één enkele string, waarbij ze van elkaar worden gescheiden door spaties. Het herhaalt de elementen van s, converteert elk element naar een string en voegt ze samen met behulp van een spatiescheidingsteken. De resulterende string wordt vervolgens afgedrukt.

Python3




s>=> [>'I'>,>'want'>,>4>,>'apples'>,>'and'>,>18>,>'bananas'>]> listToStr>=> ' '>.join([>str>(elem)>for> i,elem>in> enumerate>(s)])> print>(listToStr)>

>

>

Uitvoer

I want 4 apples and 18 bananas>

Tijdcomplexiteit: Op)
Hulpruimte: Op)

Vermeld een string met behulp van in exploitant

De code herhaalt elk element i in de lijst s en drukt het af. De end= geeft aan dat er na elk element een spatie moet worden afgedrukt in plaats van een regeleindeteken, waardoor de elementen op dezelfde regel worden afgedrukt, gescheiden door spaties.

Python3




s>=> [>'Geeks'>,>'for'>,>'Geeks'>]> for> i>in> s:> >print>(i,end>=>' '>)>

>

>

Uitvoer

Geeks for Geeks>

Tijdcomplexiteit: Op)
Hulpruimte: Op)

Converteer een lijst naar Met behulp van de functools.reduce-methode

De code gebruikt de functie reduce() uit de functools-module om de elementen van de lijst te combineren in één enkele string. Het past de lambda-functie lambda a, b: a ++ str(b) toe om elk element b opeenvolgend aan elkaar te koppelen met het vorige resultaat a. De resulterende string wordt vervolgens afgedrukt.

Python




from> functools>import> reduce> s>=> [>'I'>,>'want'>,>4>,>'apples'>,>'and'>,>18>,>'bananas'>]> listToStr>=> reduce>(>lambda> a, b : a>+> ' '> +>str>(b), s)> print>(listToStr)>

>

>

Uitvoer

I want 4 apples and 18 bananas>

Tijdcomplexiteit: De tijdscomplexiteit van de opgegeven Python-code is O(n), waarbij n het aantal elementen in de invoerlijst is
Ruimtecomplexiteit: De ruimtecomplexiteit van de code is O(n), waarbij n het aantal elementen in de invoerlijst s is.

Lijst naar String met behulp van de str.format-methode

Een extra benadering om een ​​lijst naar een string in Python te converteren is het gebruik van de str.format-methode . Met deze methode kunt u een tekenreekssjabloon opgeven en vervolgens de waarden van de tijdelijke aanduiding invullen met de elementen in de lijst.

Bijvoorbeeld:

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>

>

>

Uitvoer

Geeks for Geeks>

Deze aanpak heeft het voordeel dat je precies kunt specificeren hoe de elementen in de lijst moeten worden opgemaakt, door gebruik te maken van de tijdelijke aanduidingen voor opmaak in de tekenreekssjabloon. U kunt bijvoorbeeld het aantal decimalen voor getallen met drijvende komma opgeven, of de breedte en uitlijning van de uitvoerreeks.

constructeurs in Java

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>

>

>

Uitvoer

1.23 good 3.46>

Tijdcomplexiteit: De tijdscomplexiteit van de bovenstaande benaderingen zal afhangen van de lengte van de lijst. In methode 1 doorlopen we bijvoorbeeld de lijst en voegen we elk element toe aan een string, zodat de tijdscomplexiteit O(n) is, waarbij n de lengte van de lijst is.
Op dezelfde manier zal de tijdscomplexiteit van andere methoden ook O(n) zijn.
Ruimtecomplexiteit: De ruimtecomplexiteit van alle bovenstaande methoden zal ook O(n) zijn, aangezien we een nieuwe reeks van grootte n maken om de elementen van de lijst op te slaan.

Converteer Python-lijst naar String met behulp van recursie

De code recursief converteert een lijst l naar een stringwoord door de elementen ervan samen te voegen. Het begint bij de startindex, voegt het huidige element aan het woord toe en vervolgt het proces tot het einde van de lijst wordt bereikt. De resulterende string wordt vervolgens afgedrukt.

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, ''))>

>

>

Uitvoer

Geeks for Geeks>