Comment puis-je retourner une chaîne entre guillemets?
Question
J'ai un tuple de chaînes que je souhaiterais extraire le contenu sous forme de chaîne entre guillemets, c'est-à-dire.
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
La solution
", ".join('"{0}"'.format(i) for i in tup)
ou
", ".join('"%s"' % i for i in tup)
Autres conseils
Eh bien, une réponse serait:
', '.join([repr(x) for x in tup])
ou
repr(tup)[1:-1]
Mais ce n'est pas vraiment sympa. ;)
Mis à jour: Notez que vous ne pourrez pas contrôler si la chaîne résultante commence par '" ou '" ;. Si cela compte, vous devez être plus explicite. Les autres réponses sont les suivantes:
', '.join(['"%s"' % x for x in tup])
Voici un moyen de le faire:
>>> t = ('s1', 's2', 's3')
>>> ", ".join( s.join(['"','"']) for s in t)
'"s1", "s2", "s3"'
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow