加入包含引号的字符串

时间:2013-08-14 01:57:08

标签: python html join tags

如何加入包含引号的字符串?以下是生成HTML图像标记的程序示例。但程序打印不正确。

import sys

sys.stdout = open("/Users/kyle/images.html", "w")
for x in xrange(100,490):
    site = "http://www.example.com/image"+str(x)+".jpg"
    print "<img src=""+site+"">"

它将以这种方式正确打印print "<img src="+'"'+site+'"'+">" 但我想知道是否有另一种更简单的方法。

4 个答案:

答案 0 :(得分:4)

是的,您可以对print语句使用单引号字符串,然后逐字地包含双引号字符串:

print '<img src="' + site + '">'

我通常更喜欢使用str.format()来做这种事情,因为它使输出的位置更加明显。

print '<img src="{0}">'.format(site)

但是,如果您生成大量HTML,最好使用像Jinja2这样的模板语言,它会处理自动转义,而不是更好。

答案 1 :(得分:2)

Python并不关心你使用哪个引号。

print '<img src="' + site + '">'

答案 2 :(得分:1)

其他人已经展示了.format非常酷。另一种方式可以是:

print "<img src='%s'>" % site

答案 3 :(得分:1)

您也可以始终转义内部引号字符:

    print "<img src=\""+site+"\">"