У меня есть файл CSV, который я должен импортировать, взять каждую строку файла и распечатать в HTML, чтобы создать 5 отдельных файлов для каждых 5 строк в файле CSV.
Здесь - это ссылка на DL CSV-файл.
Вот мой код:
import csv
original = file('southpark.csv', 'rU')
reader = csv.reader(original)
BigList = []
html_str = """<html>
<P CLASS="western" ALIGN=CENTER STYLE="margin-top: 0.08in; margin-bottom: 0.25in">
<FONT SIZE=7 STYLE="font-size: 60pt">VALUE1</FONT></P>
<P CLASS="western" ALIGN=CENTER STYLE="margin-top: 0.08in; margin-bottom: 0.25in">
<FONT SIZE=7 STYLE="font-size: 36pt">VALUE2</FONT></P>
<P CLASS="western" ALIGN=CENTER STYLE="margin-top: 0.08in; margin-bottom: 0.25in">
<FONT SIZE=7 STYLE="font-size: 36pt"> VALUE3</FONT></P>
<P CLASS="western" ALIGN=CENTER STYLE="margin-top: 0.08in; margin-bottom: 0.25in">
<FONT SIZE=6 STYLE="font-size: 28pt"> VALUE4</FONT></P>
<P CLASS="western" ALIGN=CENTER STYLE="margin-top: 0.08in; margin-bottom: 0.25in">
<FONT SIZE=6 STYLE="font-size: 28pt"> VALUE5</FONT></P>
<P CLASS="western" ALIGN=CENTER STYLE="margin-top: 0.08in; margin-bottom: 0.25in">
<FONT SIZE=6 STYLE="font-size: 28pt"> VALUE6</FONT></P>
<P CLASS="western" ALIGN=CENTER STYLE="margin-top: 0.08in; margin-bottom: 0.25in">
<FONT SIZE=6 STYLE="font-size: 28pt"> VALUE7</FONT></P>
</html>"""
for row in reader:
BigList.append(row)
print BigList
html_str = html_str.replace('VALUE1', BigList[0][0])
html_str = html_str.replace('VALUE2', BigList[0][1])
html_str = html_str.replace('VALUE3', BigList[0][2])
html_str = html_str.replace('VALUE4', BigList[0][3])
html_str = html_str.replace('VALUE5', BigList[0][4])
html_str = html_str.replace('VALUE6', BigList[0][5])
html_str = html_str.replace('VALUE7', BigList[0][6])
html_str2 = html_str.replace('VALUE1', BigList[1][0])
html_str2 = html_str.replace('VALUE2', BigList[1][1])
html_str2 = html_str.replace('VALUE3', BigList[1][2])
html_str2 = html_str.replace('VALUE4', BigList[1][3])
html_str2 = html_str.replace('VALUE5', BigList[1][4])
html_str2 = html_str.replace('VALUE6', BigList[1][5])
html_str2 = html_str.replace('VALUE7', BigList[1][6])
def strToFile():
fout = open("marsh.html", "w")
fout.write(html_str)
fout.close()
def strToFile2():
fout = open("broflovski.html", "w")
fout.write(html_str2)
fout.close()
strToFile()
strToFile2()
В результате создается файл "marsh.html", который отображает первую строку файла CSV. Чего я не могу понять, так это как зациклить его в функциях def, чтобы я мог заменить каждое «VALUE1-7», потому что сейчас сохраняется только первая строка.
Очевидно, что html_str2 и strToFile2 () в значительной степени бесполезны, поскольку первое, что присваивается «VALUE1-7», сохраняется навсегда ..
ТАК что я хочу получить 5 файлов с именами marsh.html, broflofsvki.html, cartman.html, mccormick.html и stotch.html со всей соответствующей информацией из соответствующих строк, отображаемых с использованием шаблона HTML в приведенном выше коде. .
Я все еще не понимаю, как использовать списки и функции, если честно, поэтому любая помощь или руководство высоко ценится. Если бы кто-то мог показать мне, как это сделать, я чувствовал бы, что понял бы больше, поскольку я искал через Google и пытался реализовать различные методы самостоятельно и не могу понять это. Я использую Python 2.7.2 между прочим.