python xlrd库使用问题

使用xlrd 2.0.1读取2001-2019文档表格数据提示

Traceback (most recent call last):
File "D:\pycharm工程\venv\抓取\14-19.py", line 57, in
date = get_date(diqu)
File "D:\pycharm工程\venv\抓取\14-19.py", line 35, in get_date
v_1.append(sheet1_object.cell_value(rowx=1, colx=3)) # xlrd单元格数值比正常小一
File "D:\pycharm工程\venv\lib\site-packages\xlrd\sheet.py", line 420, in cell_value
return self._cell_values[rowx][colx]
IndexError: list index out of range

全部代码如下


import os
from openpyxl import load_workbook
from xlrd import open_workbook_xls
def get_diqu_name():  # 获取excel表格文件名,即地区名称
    path = 'D:\桌面\9-30建成区excel合并\\2014'
    diqu_one = os.listdir(path)
    diqu_two = []
    for i in diqu_one:
        i = i.split('.', 1)[0]
        diqu_two.append(i)
  return diqu_two

def get_date(diqu):
    v_0 = []
    v_1 = []
    for i in diqu:
        path = 'D:\桌面\9-30建成区excel合并\\2014\\{}.xls'.format(i)
        workbook = open_workbook_xls(path)

        sheet1_object = workbook.sheets()[0]

        v_0.append(sheet1_object.cell_value(rowx=1, colx=2))  # xlrd单元格数值比正常小一
        v_1.append(sheet1_object.cell_value(rowx=1, colx=3))  # xlrd单元格数值比正常小一

    return v_0, v_1


def write_excel(diqu, v_0, v_1):
    path = "D:\桌面\9-30建成区excel合并\模板.xlsx"
    workbook = load_workbook(path)
    worksheet = workbook.active

    for i in range(3668, len(v_0) + 3668):
        worksheet.cell(row=i, column=2).value = diqu[i - 3668]
        worksheet.cell(row=i, column=3).value = v_0[i - 3668]
        worksheet.cell(row=i, column=4).value = v_1[i - 3668]
    workbook.save('D:\桌面\9-30建成区excel合并\\'+'2014.xlsx')


if __name__ == '__main__':
    diqu = get_diqu_name()

    date = get_date(diqu)

    v_0 = date[0]
    v_1 = date[1]

    write_excel(diqu, v_0, v_1)

    print('合并完成')

只有表格数据值有些许变化,其他没有任何变化

尝试过的方法

尝试过2014年某一地区读取,没有任何问题

img

吧完整的项目发来 我试试