Implode / Explode-Funktion?!

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
jazzdee!
User
Beiträge: 26
Registriert: Freitag 21. Oktober 2005, 21:45

Implode / Explode-Funktion?!

Beitragvon jazzdee! » Freitag 28. Oktober 2005, 13:42

Gibt es in Python eine Im- bzw. Explode-Funktion? Ich möchte gerne eine Liste in einen string verwandeln, bzw. einen string in eine liste. ist das direkt mit einer funktion/einem befehl möglich oder muss ich mir da was basteln?
mbierenfeld
User
Beiträge: 39
Registriert: Donnerstag 9. Dezember 2004, 22:02
Wohnort: Muenchen

Beitragvon mbierenfeld » Freitag 28. Oktober 2005, 14:30

Ha erster ...

Liste nach String :

Code: Alles auswählen

liste = ["urgs", "michael"]
string = ""

for eintrag in liste:
    string += eintrag

print string


string nach Liste geht mit

Code: Alles auswählen

string = "the snooty fox jumps over the lazy dog"
liste = string.split()
jazzdee!
User
Beiträge: 26
Registriert: Freitag 21. Oktober 2005, 21:45

Beitragvon jazzdee! » Freitag 28. Oktober 2005, 14:46

liste zu string hab ich so geschrieben

Code: Alles auswählen

for x in range(0,len(ENDUNG)):
            str=str+ENDUNG[x]
            if x<(len(ENDUNG)-1):
                str=str+", "


für das string zu liste bin ich dir sehr dankbar :)
das split erleichtert einem doch ungemein die arbeit^^
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Beitragvon mawe » Freitag 28. Oktober 2005, 16:17

Hi!

Also für liste zu string würd ich doch join nehmen:

Code: Alles auswählen

lst = ["a", "b"]
s = ",".join(lst)


Gruß, mawe
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Freitag 28. Oktober 2005, 20:17

Ich hätte noch eine repr-Lösung anzubieten:

Code: Alles auswählen

In [2]: lst = ["a", "b"]
In [3]: s = repr(lst)
In [4]: s
Out[4]: "['a', 'b']"

Aber für die meisten Fälle ist join besser :)
My god, it's full of CARs! | Leonidasvoice vs Modvoice
cime
User
Beiträge: 152
Registriert: Dienstag 24. Mai 2005, 15:49

Beitragvon cime » Sonntag 30. Oktober 2005, 17:28

Leonidas hat geschrieben:Ich hätte noch eine repr-Lösung anzubieten:

Code: Alles auswählen

In [2]: lst = ["a", "b"]
In [3]: s = repr(lst)
In [4]: s
Out[4]: "['a', 'b']"

Aber für die meisten Fälle ist join besser :)


wenn du so etwas brauchst kannst du das auchn mit

Code: Alles auswählen

list.__str__()
machen

jazzdee! hat geschrieben:liste zu string hab ich so geschrieben

Code: Alles auswählen

for x in range(0,len(ENDUNG)):
            str=str+ENDUNG[x]
            if x<(len(ENDUNG)-1):
                str=str+", "


für das string zu liste bin ich dir sehr dankbar :)
das split erleichtert einem doch ungemein die arbeit^^


das könntest du auch mit

Code: Alles auswählen

str(["a","b"])[2:-2].replace("'","")
oder

Code: Alles auswählen

str(["a","b"])[2:-2].replace(" '","").replace("',",',')
machen
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Mittwoch 2. November 2005, 17:50

cime hat geschrieben:wenn du so etwas brauchst kannst du das auchn mit

Code: Alles auswählen

list.__str__()
machen

Hehe, stimmt. Jedoch benutze ich lieber die passenden Builtins, als die magischen Objektmethoden zu nutzen, soder nutzt du __len__ statt len()? :wink:
My god, it's full of CARs! | Leonidasvoice vs Modvoice
cime
User
Beiträge: 152
Registriert: Dienstag 24. Mai 2005, 15:49

Beitragvon cime » Mittwoch 2. November 2005, 21:55

Leonidas hat geschrieben:
cime hat geschrieben:wenn du so etwas brauchst kannst du das auchn mit

Code: Alles auswählen

list.__str__()
machen

Hehe, stimmt. Jedoch benutze ich lieber die passenden Builtins, als die magischen Objektmethoden zu nutzen, soder nutzt du __len__ statt len()? :wink:


jaja, ich weiß ich arbeite nicht konstant :wink: , aber irgendwann werd ich mir auch das mal angwöhnt haben ....

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot], Google [Bot], Holger Chapman, Tholo