如何在引号内打印变量?

时间:2015-01-03 16:49:11

标签: python output quotation-marks

我想在引号内打印一个变量。我想打印出"variable"

我已经尝试了很多,有效的是: '"', variable", '"' - 但是我在输出中有两个空格 - > " variable "

如果我在没有逗号的情况下print '"'variable'"',我会收到语法错误。

如何在一对引号内打印?

5 个答案:

答案 0 :(得分:17)

您可以使用format

>>> s='hello'
>>> print '"{}"'.format(s)
"hello"

在此处了解格式:Format

答案 1 :(得分:4)

如果撇号(“单引号”)没问题,那么最简单的方法是:

print repr(str(variable))

否则,更喜欢.format方法而不是%运算符(请参阅Hackaholic的回答)。

%运算符(参见Bhargav Rao的答案)也可以使用,即使在Python 3中也是如此,但是打算在将来的版本中删除。

使用repr()的好处是可以正确处理字符串中的引号。如果文字中有撇号,repr()将切换为""引号。它总会产生一些Python识别为字符串常量的东西。

这对您的用户界面是否有用,那么,这是另一回事。使用%.format,您可以获得开始时的方式的简写:

print '"' + str(variable) + '"'

......正如查尔斯达菲在评论中提到的那样。

答案 2 :(得分:3)

简单地说:

print '"A word that needs quotation marks"'

或者您可以使用三重引号字符串:

print( """ "something" """ )

答案 3 :(得分:2)

format是最好的。这些是替代品。

>>> 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"

答案 4 :(得分:2)

有两种简单的方法可以做到这一点。第一种是在每个引号之前使用反斜杠,如下所示:

s = "\"variable\""

另一种方式是,如果字符串周围有双引号,请使用单引号,Python会将其识别为字符串的一部分(反之亦然):

s = '"variable"'
相关问题