web-dev-qa-db-fra.com

imprimer des guillemets autour d'une variable

Par exemple, nous avons:

Word = 'Some Random Word'
print '"' + Word + '"'

existe-t-il un meilleur moyen d'imprimer des guillemets doubles autour d'une variable?

13
Hero Stradivari

Mettre à jour :

De Python 3.6 , vous pouvez utiliser f-strings

>>> print(f'"{Word}"')
"Some Random Word"

Réponse originale:

Vous pouvez essayer % -formatting

>>> print('"%s"' % Word)
"Some Random Word"

OU str.format

>>> print('"{}"'.format(Word))
"Some Random Word"

OU échapper le caractère de citation avec \

>>> print("\"%s\"" % Word)
"Some Random Word"

Et, si les guillemets doubles ne constituent pas une restriction (par exemple, les guillemets simples feraient l'affaire)

>>> from pprint import pprint, pformat
>>> print(pformat(Word))
'Some Random Word'
>>> pprint(Word)
'Some Random Word'

OU comme d'autres l'ont déjà dit (incluez-le dans votre déclaration)

>>> Word = '"Some Random Word"'
>>> print(Word)
"Some Random Word"

Utilisez ce qui vous semble vous _ être meilleur ou moins déroutant.

Et, si vous avez besoin de le faire pour plusieurs mots, vous pouvez aussi bien créer une fonction

def double_quote(Word):
    return '"%s"' % Word

print(double_quote(Word), double_quote(Word2))

Et (si vous savez ce que vous faites &) si les performances de ces produits vous préoccupent, voir cette comparaison .

34
shad0w_wa1k3r

Que diriez-vous de json.dumps:

>>> import json
>>> print(json.dumps("hello world"))
"hello world"

L'avantage par rapport aux autres approches mentionnées ici est qu'il échappe également aux guillemets dans la chaîne (prenez ce str.format!), Utilise toujours des guillemets doubles et est en fait destiné à une sérialisation fiable (prenez cette repr()!):

>>> print(json.dumps('hello "world"!'))
"hello \"world\"!"
5
coldfix

Vous pouvez essayer repr

Code:

Word = "This is a random text" print repr(Word)

Sortie:

'This is a random text'

4
Sunny Shukla
Word = '"Some Random Word"' # <-- did you try this?
3
qwertynl

Cela semble idiot, mais ça me convient. C'est facile à lire.

Word = "Some Random Word"
quotes = '"'
print quotes + Word + quotes
3
Marcelo

Utiliser la séquence d'échappement

Exemple:

int x = 10;
System.out.println("\"" + x + "\"");

O/P

"10"
0
Adarsh J