Как написать и сохранить html файл в python?
Вот что я знаю, как писать и сохранять его
Html_file= open"(filename","w")
Html_file.write()
Html_file.close
Но как мне сохранить файл, если я хочу написать действительно длинные коды вроде этого:
1 <table border=1>
2 <tr>
3 <th>Number</th>
4 <th>Square</th>
5 </tr>
6 <indent>
7 <% for i in range(10): %>
8 <tr>
9 <td><%= i %></td>
10 <td><%= i**2 %></td>
11 </tr>
12 </indent>
13 </table>
Ответы
Ответ 1
Вы можете создавать многострочные строки, заключая их в тройные кавычки. Таким образом, вы можете сохранить свой HTML в строке и передать эту строку в write()
:
html_str = """
<table border=1>
<tr>
<th>Number</th>
<th>Square</th>
</tr>
<indent>
<% for i in range(10): %>
<tr>
<td><%= i %></td>
<td><%= i**2 %></td>
</tr>
</indent>
</table>
"""
Html_file= open("filename","w")
Html_file.write(html_str)
Html_file.close()
Ответ 2
print('<tr><td>%04d</td>' % (i+1), file=Html_file)
Ответ 3
Вы можете попробовать:
colour = ["red", "red", "green", "yellow"]
with open('mypage.html', 'w') as myFile:
myFile.write('<html>')
myFile.write('<body>')
myFile.write('<table>')
s = '1234567890'
for i in range(0, len(s), 60):
myFile.write('<tr><td>%04d</td>' % (i+1));
for j, k in enumerate(s[i:i+60]):
myFile.write('<td><font style="background-color:%s;">%s<font></td>' % (colour[j %len(colour)], k));
myFile.write('</tr>')
myFile.write('</table>')
myFile.write('</body>')
myFile.write('</html>')
Ответ 4
Вы можете сделать это, используя write() :
#open file with *.html* extension to write html
file= open("my.html","w")
#write then close file
file.write(html)
file.close()
Ответ 5
Вы также можете сделать это, не называя close()
с помощью ключевого слова with
. Например:
# HTML String
html = """
<table border=1>
<tr>
<th>Number</th>
<th>Square</th>
</tr>
<indent>
<% for i in range(10): %>
<tr>
<td><%= i %></td>
<td><%= i**2 %></td>
</tr>
</indent>
</table>
"""
# Write to HTML to file.html
with open("file.html", "w") as file:
file.write(html)
Подробнее о with
см. fooobar.com/info/25175/....