pandas分页读取excel

一、环境配置

主要使用的包如下:

Package         Version
--------------- ---------
...
pandas          0.23.4
xlrd            1.2.0
...

pandas的版本比较重要,因为我们主要使用的是pandas中的read_excel函数中的nrow和skiprows参数,有的版本没有nrows参数。

二、实现过程

import pandas as pd

path = './1.xlsx'

def readrow(total_rows,df_columns):
    rows = total_rows  #总的行数
    fields_list = df_columns #获取所有的列名
    page_rows = 2  #设置每次读取的行数
    skiprows = 0
    while True:
        if skiprows >= rows:
            break
        df = pd.read_excel(path,nrows=page_rows,skiprows=skiprows)
        df.columns = fields_list  #每次读取重新赋列名
        skiprows += page_rows
        dict_list = df.to_dict(orient="records")
        print('df',df)
        print('dict_list',dict_list) #转成列表套字典的形式,方便存储在数据库中


def excel_to_df():
    df = pd.read_excel(path)
    total_rows = df.shape[0]  #获取所有的excel中数据的行数
    df_columns = df.columns.values.tolist() #获取execl中的列名列表
    readrow(total_rows,df_columns)


if __name__ == '__main__':
    excel_to_df()
原文地址:https://www.cnblogs.com/shenjianping/p/12732841.html