0

テキスト入力から非常に基本的な Web ページを作成するために、このスクリプトを作成しました。ユーザーが最後の行で「q」を入力してEnterキーを押すまで、無期限に行ごとに進みます。問題は、タブまたはいくつかのスペースを前もって入力すると、それらが最終的な html ファイルに書き込まれないことです。このスクリプトには 2 つのメソッドが含まれていますが、どちらも同じ出力が得られます... 2 つ目はコメントアウトされています

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 に答える