0

我编写这个脚本是为了从文本输入构建一个非常基本的网页。它会无限地逐行运行,直到用户在最后一行输入“q”并按回车键。问题是,如果我在前面输入一个制表符或一些空格,它们不会写入最终的 html 文件。我在这个脚本中包含了两个方法,它们都给出了相同的输出......第二个被注释掉了

from sys import argv

script, file = argv

boom = open('%s.html'% file,'w')

header = """<html>
<head>
<style>
body {background-color:black; color:white;}
</style>
</head>
<body>
"""

footer = """</body>
</html>
"""

boom.write(header)

#lines = ''
#lines = list(lines)

while True:
    line = raw_input(">")

    if line != "q":
#       lines.append('%s<br>\n' % line)
        boom.write('%s<br>\n' % line)

    else:
#       string = ''.join(lines)
#       print string
#       boom.write(string)
        boom.write(footer)
        boom.close()
        exit(0)
4

1 回答 1

3

您是否尝试过查看文件的来源?空格和制表符按预期写入文件,您的问题是在解析 html 时空格在很大程度上被忽略了。如果你想保留它,你可以用 替换空格&nbsp;,或者将部分包含在一个<pre>块中。

于 2013-05-26T19:00:11.123 回答