迭代错误书写文件,以蟒蛇excel

迭代错误书写文件,以蟒蛇excel

问题描述:

import string 
import xlrd 
import xlsxwriter 
workbook = xlsxwriter.Workbook('C:\T\file.xlsx') 
worksheet = workbook.add_worksheet() 
book = open_workbook(r'C:\T\test.xls','r') 
sheet = book.sheet_by_index(0) 
for row_index in range(sheet.nrows): 
    for col_index in range(sheet.ncols): 
    print sheet.cell(row_index,0).value 
    x = sheet.cell(row_index,0).value 
    worksheet.write_string(row_index,col_index,x) 
workbook.close() 

我是一个skiddy蟒蛇。在这里,我试图通过xlrd读取xls文件中的数据,并通过xlsxwriter模块将其复制到另一个xlsx文件。但数据不会粘贴在创建的表格中。请通过这个指导我。 以上是我的确切代码。如有任何错误,请纠正我。迭代错误书写文件,以蟒蛇excel

提前致谢。

您的示例程序几乎可行。主要它需要open_workbook()方法前缀一个类,最好使用XlsxWriter write()而不是write_string(),除非您确定所读取的所有数据都是字符串类型。此外,该程序仅读取列0中的值。

下面是与这些更改相同的示例。我还更名变量in_out_,以使其更清楚哪个模块正在调用哪种方法:

import xlrd 
import xlsxwriter 

out_workbook = xlsxwriter.Workbook('file.xlsx') 
out_worksheet = out_workbook.add_worksheet() 

in_workbook = xlrd.open_workbook(r'test.xls', 'r') 
in_worksheet = in_workbook.sheet_by_index(0) 

for row_index in range(in_worksheet.nrows): 
    for col_index in range(in_worksheet.ncols): 
     cell_value = in_worksheet.cell(row_index, col_index).value 
     out_worksheet.write(row_index, col_index, cell_value) 
     print cell_value 

out_workbook.close()