python 获取文件名_真实需求 | Python+os+openpyxl 批量获取Excel的文件名和最大行数...
生活随笔
收集整理的這篇文章主要介紹了
python 获取文件名_真实需求 | Python+os+openpyxl 批量获取Excel的文件名和最大行数...
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1. 提出需求
這已經(jīng)不知道是粉絲問我的第幾個(gè)辦公自動(dòng)化的問題了,并且這些問題都是大家在學(xué)習(xí)和工作中碰到過的真實(shí)問題場(chǎng)景。其實(shí)從下圖中已經(jīng)可以很明確的看出別人的需求了,我這里就不用在贅述了,下面直接上思路吧!
2. 解題思路
為了讓大家能夠快速學(xué)會(huì),我這里會(huì)將問題拆解為各個(gè)小部分,也希望能夠幫助到大家。
1)導(dǎo)入相關(guān)庫(kù)
import?pandas?as?pdfrom?openpyxl?import?load_workbookfrom?openpyxl?import?Workbookimport?os?2)獲取文件的路徑
path?=?os.getcwd()print(path)
結(jié)果如下:
3)遍歷文件夾,獲取文件夾下的文件(包括文件夾和文件)
for?path,dirs,files?in?os.walk(path):????print(files)
結(jié)果如下:
4)篩選出以.xlsx結(jié)尾的Excel表格
tables?=?[]path?=?os.getcwd()for?path,dirs,files?in?os.walk(path):for??i?in?files:if?i.split(".")[1]?==?"xlsx":
????????????tables.append(i)
tables
結(jié)果如下:
5)組織數(shù)據(jù),便于后續(xù)寫入到Excel中
這里特別說(shuō)明一點(diǎn),組織好的數(shù)據(jù)應(yīng)該是一個(gè)列表嵌套,內(nèi)層的每一個(gè)列表,就是Excel表格中的每一行。
final_data?=?[]for?table?in?tables:????lis?=?[]
????wb?=?load_workbook(table)
????sheet?=?wb[wb.sheetnames[0]]
????max_row?=?sheet.max_row
????lis.append(table)
????lis.append(max_row)
????final_data.append(lis)
final_data
結(jié)果如下:
6)新建一個(gè)Excel表格,并循環(huán)插入數(shù)據(jù)
new_wb?=?Workbook()sheet?=?new_wb.active
sheet.title?=?"最終數(shù)據(jù)"
sheet.append(["文件名?","行數(shù)"])for?row?in?final_data:
????sheet.append(row)
new_wb.save(filename="結(jié)果.xlsx")
結(jié)果如下:
3. 完整代碼
為了文章的完整性,我在文章最后放上我的代碼。但是限于文章篇幅,最后我只粘貼一張圖片,詳細(xì)代碼,大家可以去文末獲取。
??
關(guān)注微信公眾號(hào)『數(shù)據(jù)分析與統(tǒng)計(jì)學(xué)之美』,后臺(tái)回復(fù)"openpyxl" 獲取本文完整代碼和用到的素材!
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的python 获取文件名_真实需求 | Python+os+openpyxl 批量获取Excel的文件名和最大行数...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 接口隔离原则_设计模式的三大分类及六大原
- 下一篇: python元组取值_Python基础之