尝试将csv转换为xlsx以供稍后操作。但无论我做什么它总是空白(创建xlsx并添加工作表名称,但没有数据出现)
真的很困惑,尝试各种各样。以下是我用过的最完整的代码。
import csv
from xlsxwriter.workbook import Workbook
workbook = Workbook("test.xlsx")
worksheet = workbook.add_worksheet("Raw_Data")
with open("C:\Console2\\csv.test",'r') as f:
reader = csv.reader(f)
for r, row in enumerate(reader):
for c, col in enumerate(row):
worksheet.write(r, c, col)
我不完全理解读取器行之后的位,但似乎我找到的所有相关代码都使用了这个,我试过" for statement"用于编写正常的csv,但也没有用。
编辑 - 问题似乎与读者变量有关,不确定为什么它在其他代码上工作正常。
更新 - 看起来代码覆盖原始csv,不知道为什么,我只是想读取文件并保留内容。
答案 0 :(得分:1)
您必须关闭workbook
才能使其正常运行:
import csv
from xlsxwriter.workbook import Workbook
workbook = Workbook("test.xlsx")
worksheet = workbook.add_worksheet("Raw_Data")
with open("C:\Console2\\csv.test",'r') as f:
reader = csv.reader(f)
for r, row in enumerate(reader):
for c, col in enumerate(row):
worksheet.write(r, c, col)
workbook.close()
有关示例,请参阅here。