盤點一個Python自動化辦公需求——多個壓縮包中Excel的合并
回復(fù)“書籍”即可獲贈Python從入門到進階共10本電子書
大家好,我是皮皮。
一、前言
這個事情還得從前幾天在Python星耀群【W(wǎng)ing】問了一個Python自動化辦公處理的問題,需求倒是不難,一起來看看吧。
她的需求如下:我有多個壓縮文件(zip格式),每個文件里面有3個excel表、表名是一樣的。請教:如何解壓文件,并將文件中3個excel合并成一個表呢?
二、實現(xiàn)過程
這里我找她要了3個壓縮包文件,后來【狂吃山楂片】給了一個答案,代碼如下:
from pathlib import Path
from zipfile import ZipFile
import pandas as pd
zip_path = Path('你的壓縮文件目錄').glob('*.zip') # 只獲取zip后綴的壓縮文件
to_path = Path('你的目標目錄')
# 逐個讀取目錄中壓縮文件
for file in zip_path:
# 將一個壓縮文件里面的excel文件合并成一個
with ZipFile(file) as zipf:
df = pd.concat(pd.read_excel(zipf.open(i)) for i in zipf.namelist())
# 合并后的一個表保存到目標目錄中
df.to_excel(to_path.joinpath(f'{file.stem}.xlsx'), index=False)
運行之后,順利地解決了粉絲的問題。
可以看到3個壓縮包里邊的文件全部合并為一個Excel文件了。
三、總結(jié)
大家好,我是皮皮。這篇文章主要盤點了一個Python自動化辦公處理的問題,文中針對該問題,給出了具體的解析和代碼實現(xiàn),幫助粉絲順利解決了問題。
最后感謝粉絲【W(wǎng)ing】提問,感謝【狂吃山楂片】、【巭孬嫑勥烎】給出的思路和代碼解析,感謝【馮誠】等人參與學(xué)習(xí)交流。
【提問補充】溫馨提示,大家在群里提問的時候??梢宰⒁庀旅鎺c:如果涉及到大文件數(shù)據(jù),可以數(shù)據(jù)脫敏后,發(fā)點demo數(shù)據(jù)來(小文件的意思),然后貼點代碼(可以復(fù)制的那種),記得發(fā)報錯截圖(截全)。代碼不多的話,直接發(fā)代碼文字即可,代碼超過50行這樣的話,發(fā)個.py文件就行。
大家在學(xué)習(xí)過程中如果有遇到問題,歡迎隨時聯(lián)系我解決(我的微信:pdcfighting1),應(yīng)粉絲要求,我創(chuàng)建了一些ChatGPT機器人交流群和高質(zhì)量的Python付費學(xué)習(xí)交流群和付費接單群,歡迎大家加入我的Python學(xué)習(xí)交流群和接單群!
小伙伴們,快快用實踐一下吧!如果在學(xué)習(xí)過程中,有遇到任何問題,歡迎加我好友,我拉你進Python學(xué)習(xí)交流群共同探討學(xué)習(xí)。
------------------- End -------------------
往期精彩文章推薦:
歡迎大家點贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持
想加入Python學(xué)習(xí)群請在后臺回復(fù)【入群】
萬水千山總是情,點個【在看】行不行
/今日留言主題/
隨便說一兩句吧~~
