Python:从列表中打开csv文件并转换为xls

1 投票
1 回答
7337 浏览
提问于 2025-04-17 17:35

我想从一个列表中打开多个csv文件,然后把它们转换成xls文件。

我写了这样的代码:

import sys, csv, xlwt

files = ['/home/julien/excel/csv/ABORD2.csv']

for i in files:
    f=open(i, 'rb')
    g = csv.reader ((f), delimiter=";")
    workbook=xlwt.Workbook()
    sheet= xlwt.Workbook()
    sheet = workbook.add_sheet("Sheet 1")

    for rowi, row in enumerate(g):
        for coli, value in enumerate(row):
            sheet.write(rowi,coli,value)
        workbook.save(i + ".xls")

我的xls文件是创建成功了。但是在这两个文件里,我只看到了xls的路径。比如说,ABORD.xls这个文件里只写了以下内容:

'/home/julien/excel/csv/ABORD2.xls'

你有什么建议吗?

1 个回答

4

先生,您正在不必要地创建两个工作簿,而且您保存工作簿时的缩进方式不对。

import csv, xlwt

files = ['test.csv']

for i in files:
    f=open(i, 'rb')
    g = csv.reader ((f), delimiter=";")
    wbk= xlwt.Workbook()
    sheet = wbk.add_sheet("Sheet 1")

    for rowi, row in enumerate(g):
        for coli, value in enumerate(row):
            sheet.write(rowi,coli,value)

    wbk.save(i + '.xls')

撰写回答