利用python处理excel

本文介绍了使用Python处理大量个人所得税申报数据的经验。作者通过复制模板,将原始数据整理并填充到税表中,最初使用遍历方法导致运行缓慢。后来,通过利用dataframe的特性,显著提高了效率,如13.75万人的数据现在只需约35秒即可完成处理。
摘要由CSDN通过智能技术生成

本宝宝有个工作中,需要报送个人所得税,其实以前我写过一个集成报送各年金税金vba的小代码,但是因为新接的任务数据量太大,vba可能会假死,即使能处理,也因为最近在自学python,所以想尝试用python
我的思路是:把报税模板复制出来,然后每月自动根据年金领取信息填写保存,吐槽一下,税表模板是xls,只支持6万数据,我尝试用一个xlsx文件上传,不过也成功了,嘻嘻,所以我手工把模板改成xlsx格式
第一步:复制模板
野生代码如下:

import pandas as pd
import numpy as np
import shutil
import os
import datetime
data_today = datetime.date.today()
print(data_today)
person_template = 'D:\报税工作\报税模板\人员信息.xlsx'
income_template = 'D:\报税工作\报税模板\年金领取.xlsx'
person_form='D:\报税工作\\xx计划年金人员'+str(data_today)+'.xlsx'
income_form='D:\报税工作\\xx计划年金收入'+str(data_today)+'.xlsx'
shutil.copyfile(person_template, person_form)
shutil.copyfile(income_template, income_form)

成功运行
在这里插入图片描述
然后使用了 dataframe和numpy数组进行把原始数据整理以后分别填入两个税表保存,
不管怎样,程序可以用,但是笨猪我用了遍历,好慢
12万数据简直卡死
重新搜索,利用dataframe的特性
7539人大概5秒钟就可以运行完毕
13万7500人大概使用35秒,完美!!!

import pandas as pd
import numpy as np
import shutil
import datetime
import xlwings as xw
app=xw.App(visible=True,add_book=False)
app.display_alerts=False
app.screen_updating=False
date_today = datetime.date.today()
starttime = datetime.datetime.now()
person_template = 'D:\报税工作\报税模板\人员信息.xlsx'
income_template = 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值