python文件中的HTML字符串不能按预期执行

时间:2017-02-12 04:04:38

标签: python html python-3.x

当我输入下面的代码时,它会给我一个空白的HTML页面。即使我添加了<h1><a href>标记。仅执行<title>标记。有谁知道为什么以及如何解决它?

代码:

my_variable = '''
            <html>
                <head>
                    <title>My HTML File</title>
                </head>
                <body>
                    <h1>Hello world!</h1>
                    <a href="https://www.hipstercode.com" target = "_blank">Click me</a>
                </body>
            </html>'''

my_html_file = open(r"\Users\hp\Desktop\Code\Python testing\CH\my_html_file.html", "w")

my_html_file.write(my_variable)

提前致谢!

1 个答案:

答案 0 :(得分:0)

正如@bill Bell所说,这可能是因为你还没有关闭你的文件(所以它没有刷新它的缓冲区)。

所以,在你的情况下:

my_html_file = open(r"\Users\hp\Desktop\Code\Python testing\CH\my_html_file.html", "w")
my_html_file.write(my_variable)
my_html_file.close()

但是,这不是正确的方法。实际上,例如,如果在第二行中发生错误,则文件“永远不会被关闭”。因此,您可以使用with语句确保始终。 (正如@Rawing所说)

with open('my-file.txt', 'w') as my_file:
    my_file.write('hello world!')

所以,事实上,如果你这样做了:

my_file = open('my-file.txt', 'w')
try:
    my_file.write('hello world!')
finally:
    # this part is always executed, whatever happens in the try block
    # (a return, an exception)
    my_file.close()