教你怎麼用 Python 自動整理文件

2020-12-28 小老鼠Python

我以前經常把下載的東西放在桌面或者「下載」文件夾中,使用完後再也沒管它,久而久之便變得亂七八糟,再整理的時候非常痛苦,巴不得有一個自動化的工具幫我歸類文檔。

不知道你是不是有過跟我一樣糟糕的體驗,不過,前段時間我用Python做了一個根據後綴名整理文件的工具,先來看看效果:

自動整理前:

自動整理後:

效果非常好,舒服多了

如果你想要直接下載原始碼試試看,請在公眾號後臺回復

文件自動整理

獲得原始碼下載地址。

使用

1.準備

開始之前,你要確保Python和pip已經成功安裝在電腦上,如果沒有,請訪問這篇文章:超詳細Python安裝指南 進行安裝。

如果你用Python的目的是數據分析,可以直接安裝Anaconda:Python數據分析與挖掘好幫手—Anaconda,它內置了Python和pip.

你只需要修改原始碼主程序中調用 auto_organize函數的參數即可完成對對應文件的整理,比如我想整理 C:\Users\83493\Downloads文件夾:

if __name__ =="__main__":auto_organize(r"C:\Users\83493\Downloads")

如上所示,修改代碼第61行的文件夾地址即可。修改完成後運行該腳本:

python auto_files.py

就能瞬間完成對指定文件夾的整理,極其方便。

2.原理

為了整理這些文件,我們要遍歷當前指定的文件夾:如果是文件夾則跳過,如果是文件則檢測後綴,分類到對應的文件夾中。文件夾名字及其對應的文件後綴如下:

DIRECTORIES = {"圖片": [".jpeg",".jpg",".tiff",".gif",".bmp",".png",".bpg","svg", ".heif",".psd"], "視頻": [".avi",".flv",".wmv",".mov",".mp4",".webm",".vob",".mng", ".qt",".mpg",".mpeg",".3gp",".mkv"], "文檔": [".oxps",".epub",".pages",".docx",".doc",".fdf",".ods", ".odt",".pwi",".xsn",".xps",".dotx",".docm",".dox", ".rvg",".rtf",".rtfd",".wpd",".xls",".xlsx",".ppt", "pptx",".csv",",pdf"], "壓縮文件": [".a",".ar",".cpio",".iso",".tar",".gz",".rz",".7z", ".dmg",".rar",".xar",".zip"], "影音": [".aac",".aa",".aac",".dvf",".m4a",".m4b",".m4p",".mp3", ".msv","ogg","oga",".raw",".vox",".wav",".wma"], "文本": [".txt",".in",".out"], "編程": [".py",".html5",".html",".htm",".xhtml",".c",".cpp",".java",".css"], "可執行程序": [".exe"],}

接下來是自動整理的部分代碼,先遍歷指定的文件夾,識別後綴並分類到對應的文件夾中。

for entryin os.scandir(dirval):if entry.is_dir(): # 如果是文件夾則跳過 continue file_path = Path(dirval +"\\" + entry.name) file_format = file_path.suffix.lower() # 避免後綴大小寫判斷問題,全轉為小寫 if file_formatin FILE_FORMATS: directory_path = Path(dirval +"\\" + FILE_FORMATS[file_format]) directory_path.mkdir(exist_ok=True) file_path.rename(directory_path.joinpath(entry.name))

還有出現不存在在我們字典裡的後綴的情況,把它們分類到名為 其他文件 的文件夾中:

try:os.mkdir(dirval +"\\" +"其他文件")except: passfor dirin os.scandir(dirval): try: if dir.is_dir(): # 刪除空文件夾 os.rmdir(dir) else: temp = str(Path(dir)).split('\\') # 分割文件路徑 path ='\\'.join(temp[:-1]) print(path +'\\其他文件\\' + str(temp[-1])) os.rename(str(Path(dir)), path +'\\其他文件\\' + str(temp[-1])) except: pass

最後再把以上這些部分整理成函數進行調用即可。

相關焦點

  • Python自動整理文件夾
    ,整理過程中突然想到可以利用python來自行處理,而且還可以通過聯繫熟練python,因此特地梳理了一遍python自動整理文件夾代碼,大家可以了解一下。以下是具體的代碼:&39;&39;&39;import osfrom os import path今天閒來無事,發現文件夾比較亂,整理過程中突然想到可以利用python來自行處理,而且還可以通過聯繫熟練python,因此特地梳理了一遍python自動整理文件夾代碼
  • 手把手教你安裝python編輯器pycharm
    小白:小灰,我最近發現python的功能真的好強大,我也想自己慢慢學學了。小灰:好的呀,我來慢慢教你。python真的是很好用,簡單又強大。人工智慧,數據處理,爬蟲都要用python的。我昨天就寫了一篇文章,教你怎麼使用python爬取自己喜歡的照片,我爬取了一些桌面風景,好漂亮的呀。
  • 全網最詳細的Python自動辦公教程,已整理成PDF文檔
    很多人就要問學Python自動辦公有什麼好處?1、減少重複勞動,提升工作效率,是很多職場人員想要學習Python的出發點。2、能磁碟文件的整理、使用Python操作Excel,Word,PPT,PDF文件等。3、你只需要花上幾分鐘編寫一個簡單的程序,這些枯燥無聊的工作會很快被計算機完成,就能放雙手,做職場高手。
  • python自動化辦公:文件篇(自動整理文件,一鍵完成)
    文件整理不得不先提一下正則表達式python :re模塊基本用法私信小編01即可獲取大量Python學習資料索引值為0的表元素是文件夾名稱,據此可以知道當前在處理的文件夾是哪一個。索引值為1的表元素是下一層文件夾列表,用來了解在此文件夾中還有幾個下層文件夾,分別叫什麼名字。索引值為2的元素是本文件夾內所有的文件列表,列出此文件夾中所有的文件名。由返回值的列表數據,組合出所有往下的樹狀目錄結構的內容。
  • 福利:大佬教你如何用 Python 自動化玩轉 Excel
    程式設計師大佬,教你如何用程式設計師大佬,教你如何用玩轉自如最重要的是xlwings可以調用Excel文件中VBA寫好的程序,也可以讓VBA調用用程式設計師大佬,教你如何用和excel之間的童鞋,讓你更輕鬆地分析數據!
  • 慢步python,教你怎麼通過python編程來修改word文檔內標題
    大家好,這裡是地鐵慢步,快慢的慢,因為筆者業餘學的python編程,學得的確也算是慢,慢不打緊,一直在進步就好。今天想教大家怎麼實現通過python編程來修改word文檔。熟悉word的人,可能會覺得多此一舉,直接用OFFICE或者WPS就可以了啊,幹嘛要用python?
  • 大神教你用Python逆向抓取APP數據
    接下來由小編給大家演示一下,如何逆向抓取 APP 數據,給你參考一下思路:所需設備和環境:設備:安卓手機抓包:fiddler+xposed,甚至都不知道在jadx-gui 裡怎麼搜索,請求體中 formdata是以兩個等號結尾的,應該是個base64編碼,其他一概不知。。。
  • 怎麼學習python,一個月入門,教你成為python大神
    通過5天的學習,讓你接觸真正的數據分析思維與方法,體驗2大主流數據工具,體驗用數據分析解決商業問題。體驗之後你就知道自己是不是真的適合數據分析了。點擊下面的連結就可以免費獲得~騰訊大數據專家,帶你實戰數據分析1、【why】 你為什麼要學習python?爬蟲?數據分析?機器學習?
  • 教你用Notepad++搭建完整的Python開發環境
    斌哥說大家好,我是斌哥,今天給大家說說怎麼把Notepad++搭建成PythonIDE搭建環境:Python3.4 + Notepad++7.5大致分為3種:1、從Python IDLE啟動代碼(優點:自動加載tkinter,中文異常提醒,異常紅色高亮,缺點:無法正常運行多線程和多進程代碼)2、從Python啟動代碼,需要看程序返回值3、從Python啟動代碼,無需看程序返回值Notepad++支持運行程序
  • 利用python自動生成qt工程文件,支持任意移動文件
    開發QT程序的時候,通常使用集成工具為QtCreator, 但是隨著工程越來越大,添加的文件越來越多,如果想要重新調整目錄結構,那就會很麻煩,特別是包含的頭文件中有相對的目錄。為了解決Qt工程調整目錄難的文件,本文利用QtCreator支持調用python的功能來解決該問題, 接下來就來詳細說明解決問題的過程。
  • 10行代碼教你用python鑑黃
    大家好,今天我們來教大家用python識別黃色圖片,識別黃色圖片的算法有很多,今天來講一個最簡單的算法好了,原理很簡單,那我們來編寫代碼試試實戰需要安裝python圖片庫PIL支持,PIL是Python的圖像處理標準庫,支持多種格式,並提供強大的圖形與圖像處理功能。
  • 用幾行python代碼偷偷複製U盤文件
    一直沒有去實現,最近不想看論文,就想起來這個事情了,發現其實用幾行python代碼就能搞定了。分兩步,首先寫出來python代碼,其次把.py文件轉換成exe文件,直接在windows電腦上後臺運行。,我在代碼裡注釋了usb_path就是U盤的盤符,比如你的電腦有C,D盤,那麼U盤插上來以後路徑就是E盤save_path就是你要把複製的文件保存在哪裡Python文件打包成exe1.
  • Python入門書籍,這是我整理清單,以及我對它們的心得
    今天剛好有點時間,把我整理的一部分心得,提取一部分出來給大家。第二部分 ,主要是介紹不同的任務以及程序,然後讓計算機自動完成它們。並且在每個章節後面,都會有相應的習題可以做,可以鞏固自己的所學。這本書更注重實踐性,但是對python編程的原理講解的比較少,你將會通過52個精心設計的習題來真正掌握Python編程。
  • 自動化:利用python自動生成qt工程文件,支持任意移動文件
    實現思路使用過QtCreator工具的人,應該都會知道它使用的組建檔文件的後綴名為pro, 所以,本文將介紹如何編寫python文件來添加相關編譯信息到pro文件,而python文件的主要功能則是檢測工程目錄的文件,並將相關文件添加到pro文件中,最後再將python文件的運行命令集成到QtCreator工具。
  • 教你學習:Python-100-Days-01
    教你學習:Python-100-Days-01 本項目是參考項目內容,進行個人理解,和原有項目有出入,如想了解詳情,請自行百度去搜索項目為什麼用Python?python是腳本語言,學習簡單。包含很多環境的數學包,可以簡化我們的開發,方便我們數學計算。未來是數據的時代,java和python是必須要會的語言,是人工智慧和大數據的基礎。
  • 人工智慧入門:用python教你實現手寫數字識別!
    今天我給大家帶來一個用機器學習的方法來實現手寫數字識別的教程,就像C語言中輸出的那一行「Hellow World」一樣,這個教程也是入門圖像識別中需要學會的第一個技能,我們將會使用tensorflow深度學習框架來實現手寫數字識別,在觀看此教程之前你需具備以下基礎:python基本語法神經網絡基礎知識tensorflow框架的基本使用線性代數基本知識如果你不具備以上基礎怎麼辦?
  • Python管理文件神器 os.walk
    (給程式設計師陌然加星標,提升Python技能)來源:詭途【導語】:有沒有想過用python寫一個文件管理程序?聽起來似乎沒思路?其實是可以的,因為python已經為你準備好了神器os.walk,進來看看吧!
  • 從0開始學python-6.2 用python讀寫文件
    上節課我們學習了什麼文件系統,文件樹的組成結構是什麼樣的。我們還學習了用python來查找、重命名一個文件。這節課,我們一起學習一下怎麼用python操作一個文件的內容。文件操作對一個文件,我們可以1)讀取裡面的內容、2)往文件裡寫內容、3)追加文件內容。我們來看看用python怎麼做這些事情。打開文件在對文件內容操作之前,我們首先要打開文件。我們可以使用open函數打開文件,看代碼:file = open('.
  • 程式設計師大佬,教你如何用 Python 自動化操作 Excel!玩轉自如
    excel已經成為必不可少的數據處理軟體,幾乎天天在用。python有很多支持操作excel的第三方庫,xlwings是其中一個。VBA調用用Python寫的程序。python中調用VBA,也可以在VBA中使用python編程,這些通過xlwings都可以巧妙實現。
  • 回收站刪除的文件怎麼恢復?手把手教你找回
    回收站刪除的文件怎麼恢復?相信大家在生活中都會遇到這種情況,不小心把自己的文件刪除了並且還清空了回收站,之後又想要使用之前的文件,卻不知道該怎麼才能恢復回收站刪除的文件,接下來就教大家幾個方法。回收站刪除的文件怎麼恢復?3.重啟計算機,只要你機器沒有運行過磁碟整理。