Quelle serait votre façon préférée de concaténer les chaînes d'une séquence de sorte qu'entre chaque paire consécutive une virgule soit ajoutée. Autrement dit, comment mappez-vous, par exemple, [ 'a', 'b', 'c' ]
à 'a,b,c'
? (Les cas [ s ]
et []
doivent être mis en correspondance avec s
et ''
respectivement.)Comment feriez-vous une chaîne séparée par des virgules d'une liste?
je finis habituellement utiliser quelque chose comme ''.join(map(lambda x: x+',',l))[:-1]
, mais aussi un peu insatisfait sentiment.
Editer: Je suis à la fois honteuse et heureuse que la solution soit si simple. Évidemment, je n'ai pas la moindre idée de ce que je fais. (Je probablement besoin concaténation « simple » dans le passé et en quelque sorte appris par cœur s.join([e1,e2,...])
comme raccourci pour s+e1+e2+...
.)
vous avez raison, il ne fonctionnera pas si la liste contient des numéros, mais cette façon il:. myList = '' join (carte (str, myList)) –
Ah génial! Je vais utiliser map() dans le futur. J'ai toujours fait: myString = ",". Join ([str (x) pour x dans myList]) –
'myString =", ". Join (myList)' même si la liste contient des nombres. Je l'ai juste essayé. – zengr