Was wäre Ihre bevorzugte Art, Strings aus einer Sequenz zu verketten, so dass zwischen jeweils zwei aufeinanderfolgenden Paaren ein Komma hinzugefügt wird. Das heißt, wie mappen Sie beispielsweise [ 'a', 'b', 'c' ]
zu 'a,b,c'
? (Die Fälle [ s ]
und []
sollten jeweils s
und ''
, abgebildet werden.)Wie würden Sie eine kommagetrennte Zeichenfolge aus einer Liste erstellen?
ich in der Regel so etwas wie ''.join(map(lambda x: x+',',l))[:-1]
am Ende mit, sondern auch das Gefühl etwas unzufrieden.
Edit: Ich bin beide beschämt und glücklich, dass die Lösung so einfach ist. Offensichtlich habe ich kaum eine Ahnung, was ich mache. (Ich wahrscheinlich „einfache“ Verkettung in der Vergangenheit benötigt und irgendwie s.join([e1,e2,...])
als Abkürzung für s+e1+e2+...
gespeichert.)
Sie haben Recht, es wird nicht funktionieren, wenn die Liste Zahlen enthält, aber auf diese Weise wird es: myList = ','. Join (Karte (str, myList)) –
Ah toll! Ich werde map() in Zukunft verwenden. Ich habe immer getan: myString = ",". Join ([str (x) für x in myList]) –
'myString =", ". Join (myList)' auch wenn die Liste Zahlen enthält. Ich habe es gerade ausprobiert. – zengr