在变量周围打印双引号

时间:2013-11-18 19:52:52

标签: python python-2.7

例如,我们有:

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

是否有更好的方法在变量周围打印双引号?

7 个答案:

答案 0 :(得分:36)

更新:

Python 3.6,您可以使用f-strings

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

原始答案:

您可以尝试%-formatting

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

str.format

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

或者使用\

转义引号字符
>>> print("\"%s\"" % word)
"Some Random Word"

并且,如果双引号不是限制(即单引号可以)

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

或者像其他人已经说过的那样(将其包括在你的声明中)

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

使用的感觉更好或更少混淆。

而且,如果您需要为多个单词执行此操作,您也可以创建一个函数

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

print(double_quote(word), double_quote(word2))

并且(如果您知道自己在做什么,并且如果您关注这些内容的效果),请参阅this comparison

答案 1 :(得分:7)

json.dumps

怎么样?
>>> import json
>>> print(json.dumps("hello world"))
"hello world"

这里提到的其他方法的优点是它也可以转义字符串中的引号(取str.format!),总是使用双引号,实际上是为了可靠的序列化(取repr() !):

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

答案 2 :(得分:4)

看起来很傻,但对我来说很好。这很容易阅读。

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

答案 3 :(得分:4)

您可以尝试repr

代码:

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

输出:

'This is a random text'

答案 4 :(得分:3)

word = '"Some Random Word"' # <-- did you try this?

答案 5 :(得分:1)

使用带有repr()的格式方法或f-string,可以使它写得更优雅。

a = "foo"
print("{!r}".format(a))
b = "bar"
print(f"{b!r}")

答案 6 :(得分:-1)

使用转义序列

示例:

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

O / P

"10"