Seite 1 von 1

Implode / Explode-Funktion?!

Verfasst: Freitag 28. Oktober 2005, 13:42
von jazzdee!
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?

Verfasst: Freitag 28. Oktober 2005, 14:30
von mbierenfeld
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()

Verfasst: Freitag 28. Oktober 2005, 14:46
von jazzdee!
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^^

Verfasst: Freitag 28. Oktober 2005, 16:17
von mawe
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

Verfasst: Freitag 28. Oktober 2005, 20:17
von Leonidas
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 :)

Verfasst: Sonntag 30. Oktober 2005, 17:28
von cime
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

Verfasst: Mittwoch 2. November 2005, 17:50
von Leonidas
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:

Verfasst: Mittwoch 2. November 2005, 21:55
von cime
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 ....