我想在引号内打印一个变量。我想打印出"variable"
我已经尝试了很多,有效的是:
'"', variable", '"'
- 但是我在输出中有两个空格 - > " variable "
如果我在没有逗号的情况下print '"'variable'"'
,我会收到语法错误。
如何在一对引号内打印?
答案 0 :(得分:17)
答案 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"'