将Excel写入CSV文件,如何使用其他分隔符?

时间:2015-01-13 09:25:55

标签: python

所以我使用以下脚本将excel文件导出到csv。

import csv
import xlrd

workbook = xlrd.open_workbook('excel.xlsm')
for sheet in workbook.sheets():
    if sheet.name == "Database":
        with open('{}.csv'.format(sheet.name), 'wb') as f:
            writer = csv.writer(f)
            for row in range(sheet.nrows):
                out = []
                for cell in sheet.row_values(row):
                    if isinstance(cell, float):
                        out.append(cell)
                    else:
                        out.append(unicode(cell).encode('utf8'))
                writer.writerow(out)

到目前为止,它的一切运作良好。但是我想用;创建csv文件作为每个单元格的分隔符而不是,如何实现这个?

而不是cell1,cell2,我希望输出变为cell1;cell2;

(编辑)解决方案

在启动csv.writer writer = csv.writer(f, delimiter=";")

时设置分隔符

1 个答案:

答案 0 :(得分:1)

找到答案,你可以在启动csv.writer

时指定分隔符
writer = csv.writer(f, delimiter=";")