【发布时间】:2011-08-08 00:21:47
【问题描述】:
我有几个 csv 文件,我想将它们作为新工作表转储到 excel 工作簿 (xls/xlsx) 中。 我如何做到这一点?
谷歌搜索并找到“pyXLwriter”,但似乎该项目已停止。 虽然我正在尝试“pyXLwriter”,但想知道是否有任何替代方案/建议/模块?
非常感谢。
[编辑]
这是我的解决方案:(有人有更精简、更 Python 的解决方案吗?请发表评论。谢谢)
import glob
import csv
import xlwt
import os
wb = xlwt.Workbook()
for filename in glob.glob("c:/xxx/*.csv"):
(f_path, f_name) = os.path.split(filename)
(f_short_name, f_extension) = os.path.splitext(f_name)
ws = wb.add_sheet(str(f_short_name))
spamReader = csv.reader(open(filename, 'rb'), delimiter=',',quotechar='"')
row_count = 0
for row in spamReader:
for col in range(len(row)):
ws.write(row_count,col,row[col])
row_count +=1
wb.save("c:/xxx/compiled.xls")
print "Done"
【问题讨论】:
-
试试 Sikuli。这是一个 Jython 项目,但您可以使用它来自动执行任何 GUI 任务。
-
小心。 Xlwt 将输入数量限制为 65,556。但是,如果您有更多的行数,请选择 xlsxwriter
标签: python excel csv xlrd xlwt