python设置excel每页的行数_pandas固定行数拆分excel文件为多个excel

需求:把一个excel大文件kwd.xlsx按照指定的行数(600行)进行分割,思路如下:

1、读取excel,获取到总行数rows(不含表头)

2、指定行数split_num,计算rows/split_num并向下取整,得出能按标准分割的次数value

3、按照标准分割次数计算能占用的总行数 rows_format = value*split_num

4、根据总行数总行数 rows_format生成二维列表,列表的元素依次为[0,split_num],[split_num,split_num+split_num]...

5、循环列表,利用dataframe切片(末端不包含)来依次获取固定数据写入到excel

6、最后把剩余的行数并写入

tips:

1、切片是末端不包含的

2、写入excel记得把index参数设为False,否则就把索引也写入了

代码如下:

# -*- coding: utf-8 -*-

import pandas as pd

import math

df = pd.read_excel('kwd.xlsx')

rows,cols = df.shape # 获取行数列数,默认第一列表头不算行数

split_num = 600 # 指定分割行数

value = math.floor(rows/split_num) # 标准分割次数

rows_format = value*split_num # 标准分割所占用总行数

new_list = [[i,i+split_num] for i in range(0,rows_format,split_num)]

# 标准行数文件

for i_j in new_list:

i,j = i_j

excel_small = df[i:j]

# index为False,否则就把行索引写入了

excel_small.to_excel('kwd_{0}_{1}.xlsx'.format(i,j),index=False)

# 最后分割出的文件

df[rows_format:].to_excel('kwd_last.xlsx')


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部