1

尝试将 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 语句”来编写普通的 csv,但这也不起作用。

编辑 - 问题似乎与 reader 变量有关,不知道为什么它在其他代码上工作正常。

更新 - 看起来代码覆盖了原始 csv,不知道为什么,我只想读取文件并保留内容。

4

1 回答 1

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()

有关示例,请参见此处。

于 2014-05-11T21:07:37.403 回答