繁体   English   中英

将Excel写入CSV文件,如何使用另一个定界符?

[英]Writing Excel to CSV file, how can I use another delimiter?

因此,即时通讯使用以下脚本将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, cell1;cell2;

(编辑)解决方案

在启动csv.writer writer = csv.writer(f, delimiter=";")时设置定界符

找到答案,可以在启动csv.writer时分配定界符

writer = csv.writer(f, delimiter=";")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM