Je voudrais imprimer une variable entre guillemets. Je veux imprimer "variable"
J'ai essayé beaucoup, ce qui a fonctionné était: '"', variable", '"'
- mais ensuite, j'ai deux espaces dans la sortie -> " variable "
Quand je fais print '"'variable'"'
sans la virgule, je reçois une erreur de syntaxe.
Comment puis-je imprimer quelque chose entre deux guillemets?
vous pouvez utiliser format
:
>>> s='hello'
>>> print '"{}"'.format(s)
"hello"
En savoir plus sur le format ici: Format
Si les apostrophes ("guillemets simples") sont acceptables, le moyen le plus simple consiste à:
print repr(str(variable))
Sinon, préférez la méthode .format
à l'opérateur %
(voir la réponse de Hackaholic).
L'opérateur %
(voir la réponse de Bhargav Rao) fonctionne également, même dans Python 3 jusqu'à présent, mais doit être supprimé dans une version ultérieure.
L’utilisation de repr()
présente l’avantage de permettre le traitement approprié des guillemets dans la chaîne. Si vous avez une apostrophe dans le texte, repr()
basculera en guillemets ""
. Il produira toujours quelque chose que Python reconnaît comme une constante de chaîne.
Que ce soit bon pour votre interface utilisateur, eh bien, c'est une autre affaire. Avec %
ou .format
, vous obtenez un raccourci pour la façon dont vous auriez pu le faire pour commencer:
print '"' + str(variable) + '"'
... comme l'a mentionné Charles Duffy dans un commentaire.
Faites simplement:
print '"A Word that needs quotation marks"'
Ou vous pouvez utiliser une chaîne à triple guillemet:
print( """ "something" """ )
format
est le meilleur. Ce sont des alternatives.
>>> s='hello' # Used widly in python2, might get deprecated
>>> print '"%s"'%(s)
"hello"
>>> print '"',s,'"' # Usin inbuilt , technique of print func
" hello "
>>> print '"'+s+'"' # Very old fashioned and stupid way
"hello"
Il y a deux façons simples de faire cela. La première consiste à utiliser une barre oblique inverse avant chaque guillemet, comme suit:
s = "\"variable\""
L'autre façon est, s'il y a des guillemets doubles entourant la chaîne, utilisez des guillemets simples, et Python les reconnaîtra comme faisant partie de la chaîne (et vice versa):
s = '"variable"'