Python實(shí)現(xiàn)按目錄層級輸出文件名并保存為excel
一、問題描述
當(dāng)我們發(fā)現(xiàn)電腦的內(nèi)存很滿,或平時(shí)工作中文件夾管理不清晰,導(dǎo)致里面的文件數(shù)據(jù)很雜亂,查找很不方便,一個(gè)一個(gè)文件夾去看去找然后刪除又很浪費(fèi)時(shí)間?。?/p>
二、python按目錄層級保存文件名
1.源碼
代碼如下(示例):
# encoding=utf-8 import os import xlwt from xlwt.Worksheet import Worksheet import time path = r'E:\py\python3.7\test' file_dicts = {} # 將目錄名、文件名讀取為字典數(shù)據(jù) def find_dir_name(path,key=''): file_names = os.listdir(path) file_dict = {} for file_name in file_names: print('當(dāng)前目錄:%s' % path+'\\'+file_name) file_dict[file_name] = {} if os.path.isdir(path+'\\'+file_name): file_dict[file_name] = find_dir_name(path+'\\'+file_name, file_name) else: pass return file_dict # 將字典數(shù)據(jù)存入Excel def edit_excel(worksheet,data): # 遍歷字典數(shù)據(jù) global row_number, row_data for key,value in data.items(): if value: row_data.append(key) # 如果value有值,則進(jìn)行一次遍歷 edit_excel(worksheet,value) else: # 若value值為空,則將key寫入sheet # 進(jìn)行寫入excle col = 0 for name in row_data: print('位置:%d,%d;值:%s' % (row_number,col,name)) worksheet.write(row_number,col,name) col = col+1 print('位置:%d,%d;值:%s' % (row_number,col,name)) worksheet.write(row_number,col,key) row_number = row_number+1 if row_data: row_data.pop() # time.sleep(1) return True if __name__ == '__main__': # mm = str(find_dir_name(path,key)) # f = open('file_name.txt', 'wb') # f.write(mm.encode('utf-8')) # f.close() data = find_dir_name(path) # 創(chuàng)建工作表 workbook = xlwt.Workbook(encoding='utf-8') worksheet = workbook.add_sheet('sheet1',cell_overwrite_ok=True) # 臨時(shí)記錄一行數(shù)據(jù) row_data = [] row_number = 0 edit_excel(worksheet,data) workbook.save('轉(zhuǎn)化后的excel文件名稱.xls')
2.運(yùn)行效果(部分截圖)
到此這篇關(guān)于Python實(shí)現(xiàn)按目錄層級輸出文件名并保存為excel的文章就介紹到這了,更多相關(guān)Python輸出文件名內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python fire模塊(最簡化命令行生成工具)的使用教程詳解
Python Fire是谷歌開源的一個(gè)第三方庫,用于從任何Python對象自動(dòng)生成命令行接口(CLI),可用于如快速拓展成命令行等形式。本文將通過實(shí)例為大家詳細(xì)說說fire模塊的使用,感興趣的可以了解一下2022-10-10解決Python中的modf()函數(shù)取小數(shù)部分不準(zhǔn)確問題
這篇文章主要介紹了解決Python中的modf()函數(shù)取小數(shù)部分不準(zhǔn)確問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-05-05pyqt5實(shí)現(xiàn)繪制ui,列表窗口,滾動(dòng)窗口顯示圖片的方法
今天小編就為大家分享一篇pyqt5實(shí)現(xiàn)繪制ui,列表窗口,滾動(dòng)窗口顯示圖片的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-06-06Python __setattr__、 __getattr__、 __delattr__、__call__用法示例
這篇文章主要介紹了Python __setattr__、 __getattr__、 __delattr__、__call__用法示例,本文分別對這幾個(gè)魔法方法做了講解,需要的朋友可以參考下2015-03-03Python使用Tkinter庫如何設(shè)置tkinter ttk框架背景顏色
本文介紹了在Python的Tkinter庫中,如何使用style.configure方法為ttk框架設(shè)置背景顏色及其他樣式屬性,以定制美觀的GUI界面2024-09-09yolov5 win10 CPU與GPU環(huán)境搭建過程
這篇文章主要介紹了yolov5 win10 CPU與GPU環(huán)境搭建過程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04詳解Python中的函數(shù)參數(shù)傳遞方法*args與**kwargs
本文將討論P(yáng)ython的函數(shù)參數(shù)。我們將了解args和kwargs,/和的都是什么,雖然這個(gè)問題是一個(gè)基本的python問題,但是在我們寫代碼時(shí)會經(jīng)常遇到,比如timm中就大量使用了這樣的參數(shù)傳遞方式2023-03-03