Python程序只复制excel文件中复制所有行的特定行

时间:2017-05-12 07:06:07

标签: python excel xlrd xlwt

我正在尝试使用python将特定行从一个excel文件复制到另一个excel文件。 temp_list包含我想要复制的行号。但似乎它正在复制所有行。我在这里做错了什么?

import xlrd
book = xlrd.open_workbook("file.xlsx")
sheet = book.sheet_by_index(0)
temp_list = [1,4,5,6,7,8,9,10,15,19,26]
book1 = copy(book)
sheet1=book1.get_sheet(0)
totalcols=sheet.ncols
k=0

for j in temp_list: #for rows
    for i in range(0,totalcols):
        try:
            value=sheet.cell_value(j,i)

            sheet1.write(k,i,value)
        except IndexError:
            continue
    k=k+1
book1.save("Gibberish_Removed.xls")

1 个答案:

答案 0 :(得分:0)

问题似乎在

 book1 = copy(book)
 sheet1 = book1.get_sheet(0)

然后

sheet1.write(chosen_values) #chosen value is value at index, (k,i)

这只会将所选值覆盖为(k,i),,但由于您从book 复制了sheet1,因此它也会包含其他行。 您需要从空白表1开始。