Wie kehre ich eine Zeichenfolge in Anführungszeichen aus einem Tupel?
Frage
Ich habe ein Tupel von Strings, die ich will, würde den Inhalt als Zeichenfolge in Anführungszeichen extrahieren, d.
tup=('string1', 'string2', 'string3')
when i do this
main_str = ",".join(tup)
#i get
main_str = 'string1, string2, string3'
#I want the main_str to have something like this
main_str = '"string1", "string2", "string3"'
Gath
Lösung
", ".join('"{0}"'.format(i) for i in tup)
oder
", ".join('"%s"' % i for i in tup)
Andere Tipps
Nun, eine Antwort wäre:
', '.join([repr(x) for x in tup])
oder
repr(tup)[1:-1]
Aber das ist nicht wirklich schön. ;)
Aktualisiert: Obwohl erwähnt, wird es nicht möglich sein, wenn zu steuern String resultierende beginnt mit ‚“ oder ‚“. Wenn es ankommt, müssen Sie mehr explizit sein, wie die anderen Antworten sind hier:
', '.join(['"%s"' % x for x in tup])
Hier ist eine Möglichkeit, es zu tun:
>>> t = ('s1', 's2', 's3')
>>> ", ".join( s.join(['"','"']) for s in t)
'"s1", "s2", "s3"'
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow