最近,偶然用到了python来处理多个excel,主要目的如下:
目的1:提取文件夹下多个excel中的第一个工作簿。
目的2:提取的工作簿的名称以原excel名称命名。
目的3:将提取出来的工作簿合并为新的excel。
特别注意: 这里python的版本用的是3.6.5,因为使用的第三方库版本受限,所以建议使用python3.6。
(关注“测试开发自动化” 弓中皓,查看历史文章,获取源码)
一、需求说明
我的本地有三个excel,如下所示:
最后,希望变成这样:
废话不多说,直接上干货。
二、安装第三方库
- 安装pandas库
pip install pandas==1.0.4
如果报错No Model Name XXXX, 就执行下面的操作:
2. 安装openpyxl
pip install openpyxl==3.0.10
注意:如果之前安装了openpyxl需要先卸载,再安装:
pip uninstall openpyxl
- 安装xlrd
pip install xlrd==1.2.0
注意:如果之前安装了xlrd需要先卸载,再安装:
pip uninstall xlrd
三、编写代码
- 遍历本地excel
for pa in os.listdir(path): if '.xlsx' in pa: print(pa)
- 读取exce模块并提取sheet
df = pd.read_excel(io=path+os.sep+pa, sheet_name=0, encoding='utf8')
- 写入新的excel
with pd.ExcelWriter(r'test2.xlsx') as writer: df.to_excel(writer, sheet_name=file_name, index=None, encoding='utf8') writer.save()
如果对您有帮助,点个关注再走吧!!!
(关注“测试开发自动化” 弓中皓,查看历史文章,获取源码)