【发布时间】:2016-09-10 17:18:27
【问题描述】:
我正在尝试将 CSV 列的数据打印到 HTML 表格中
CSV 文件是这样的(示例)
firstname, surname
firstname, surname
firstname, surname
firstname, surname
firstname, surname
firstname, surname
firstname, surname
我可以正常读取这些数据 - 并通过以下方式将其打印到表格中:
import csv
import sys
from fpdf import FPDF, HTMLMixin
#load in csv file
data = csv.reader(open(sys.argv[1]))
names = ""
#Read column names from first line of the file
fields = data.next()
for row in data:
names = row[0] + " " + row[1]
html_row = " <tr> "
html_col = " <td border=0 width=15%>" + names + "</td></tr>"
html_out = html_out + html_row + html_col
html = html_header + html_out + html_footer
print html
pdf.write_html(html)
pdf.output('test2.pdf', 'F')
这给出了以下内容:
<tr><td border=0 width=15%>firstname surname</td></tr>
<tr><td border=0 width=15%>firstname surname</td></tr>
<tr><td border=0 width=15%>firstname surname</td></tr>
ie - 每个名字都在单独的行上 - 我想做的是将每个名字都作为一个单元格列单元格
<tr><td border=0 width=15%>firstname surname</td><td border=0 width=15%>firstname surname</td><td border=0 width=15%>firstname surname</td></tr>
谢谢
【问题讨论】:
-
您是否可能在
html_out = html_out + ....行缺少缩进,因为目前它不是循环的一部分,不会给您问题中显示的结果? -
我的格式错误 - 现在应该修复..
-
另外,
html_rowend未在所示代码中的任何位置设置。那么这是否如图所示运行? -
现在已移除 - 在尝试格式化示例时留下了