桌面文件又多又亂?教你用Python一鍵清理,只需20行代碼輕鬆實現!

来源:https://www.cnblogs.com/hahaa/archive/2023/03/13/17211645.html
-Advertisement-
Play Games

我這個人比較懶,總是喜歡把收到的重要文件,或者比較緊急的文件放到桌面,久而久之,桌面或者文件夾越來越亂 。 不知道大家是不是像我一樣的 我滴媽呀,看著就很崩潰! 之所以放在桌面上,主要是為了下次使用的時候好找 但是,其實,結果…並沒有 結果,我的馬馬~~ 反而更難找了 也不知道越亂越好找這句話是誰第 ...


我這個人比較懶,總是喜歡把收到的重要文件,或者比較緊急的文件放到桌面,久而久之,桌面或者文件夾越來越亂 。

不知道大家是不是像我一樣的


我滴媽呀,看著就很崩潰!

之所以放在桌面上,主要是為了下次使用的時候好找

但是,其實,結果…並沒有

結果,我的馬馬~~

反而更難找了

也不知道越亂越好找這句話是誰第一個傳出來的!!!

不過還好我會Python,直接寫了一個腳本,用來整理桌面或者文件夾。

python腳本里的文件類型

我們可以自己根據需要進行擴展

效果展示


1、格式定義

首先,將我們要整理的文件格式進行一下分類,如下。

大家可以根據自己的實際要求,對需要格式的文件類型進行自定義。

FILE_FORMATS={
"圖片資料":[".jpg",".jpeg",".bpm",'.png','.gif'],
"文檔資料":[".doc",".docx",".xls",".xlsx",".ppt",".pptx",".pdf",".txt",".md"],
"視頻文件":[".mp4","avi","wmv",],
"音頻文件":[".mp3"],
"壓縮文件":[".rar",".zip",".tar",".gz",".7z","bz"],
"腳本文件":[".ps1",".sh",".bat",".py"],
"可執行文件":['.exe','.msi'],
"網頁文件":['.html','.xml','.mhtml','.html'],
"快捷方式":[".lnk"],
}

 

2、遍歷要整理的文件夾

# 定義要整理的文件夾
orginizePath='D:\\direct'
print(os.scandir(orginizePath))
 
# 迴圈整理的文件夾
# 完整源碼自取裙 592539176
for myfile in os.scandir(orginizePath):
    # 跳過文件夾
    if myfile.is_dir():
        print('%s是文件夾'%myfile)
        continue
    # 輸出文件的名
    print(myfile.name)

 

3、整理文件夾

通過,我們定義的格式類型,創建相應的文件夾。

例如:定義的圖片資料類型。

"圖片資料":[".jpg",".jpeg",".bpm",'.png','.gif']

 

如果檢測到用包含的.jpg 等格式的文件,我們就創建一個 圖片資料文件夾。

然後將文件夾中的 .jpg格式的文件,移動到 圖片資料文件夾中。

#找到要整理的文件路徑
file_path=Path(orginizePath+'\\'+myfile.name)
lower_file_path=file_path.suffix.lower()
#迴圈遍歷我們定義的格式類型
for geshi in FILE_FORMATS:
    if lower_file_path in FILE_FORMATS[geshi]:
        directory_path=Path(orginizePath+'\\'+geshi)
        directory_path.mkdir(exist_ok=True)
        file_path.rename(directory_path.joinpath(myfile.name))
        print('文件整理已完成!')

 

4、腳本運行方法

直接,使用Python + 腳本運行即可

PS C:\Users\pacer\Desktop\>python file_orgin.py

 

5、整理效果如下

直接將腳本中的文件路徑,改成你要整理的路徑即可。

最後

好了,今天的分享就到這裡結束了,麻煩大家給個免費的點贊+收藏吧!

咱們下次見!


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 搞懂無鎖編程的重要一步是完全理解記憶體順序! 本教程由作者和ChatGPT通力合作完成。 都有哪幾種? c++的記憶體模型共有6種 memory_order_relaxed memory_order_consume memory_order_acquire memory_order_release me ...
  • 首先理解常亮表達式。常量表達式是指值不會改變,並且在編譯過程就能計算得到結果。 const修飾的對象無法修改,constexpr對象在編譯期間就確定且無法修改。 constexpr變數,編譯器在編譯階段驗證變數是否為一個常量表達式。 constexpr側重變數初值編譯階段確定,且無法修改。如果認定變 ...
  • 處理GB/T4754—2017國民經濟行業分類與代碼數據,劃分四級分類存入mysql資料庫【文末獲取下載方式】 第二張圖是之前的格式,今天應一位網友的要求,將其處理為如下第三張圖的格式。更貼近源文檔,方便使用。 如圖所示: 按 門類編碼 門類名稱 大類編碼 大類名稱 中類編碼 中類名稱 小類編碼 小 ...
  • 單元測試、反射 一、單元測試 1.1 單元測試快速入門 所謂單元測試,就是針對最小的功能單元,編寫測試代碼對其進行正確性測試。 我們想想,咱們之前是怎麼進行測試的呢? 比如說我們寫了一個學生管理系統,有添加學生、修改學生、刪除學生、查詢學生等這些功能。要對這些功能這幾個功能進行測試,我們是在main ...
  • 此處為一個測試項目的簡單結構,為了便於管理和使用,所以直接將需要的jar放到lib(名字隨意)文件夾下 方法一、 找到項目結構視窗並打開→打開後按圖片上順序進行點擊→而後找到自己的jar包後選中並確定 以上步驟都結束以後就可以調用包中的方法了 方法二、 打開項目結構管理以後→點擊Libraries→ ...
  • 作者:你呀不牛 鏈接:https://juejin.cn/post/7114669787870920734 前段時間,同事在代碼中KW掃描的時候出現這樣一條: 上面出現這樣的原因是在使用foreach對HashMap進行遍歷時,同時進行put賦值操作會有問題,異常ConcurrentModifica ...
  • 1.總結內容參考:https://blog.csdn.net/dhklsl/article/details/127533485 2.下麵是本人工作項目中實戰到的案例(具體業務的實體沒必要關註) 2.1.攔截器使用 點擊查看代碼 import java.lang.invoke.MethodHandle ...
  • IDEA: 如何導入項目模塊 以及 將 Java程式打包 JAR 詳細步驟 、 @ IDEA 導入項目模塊 Module 一. 創建一個空項目 想要導入模塊 Module ,我們需要先創建一個項目,因為 Module模塊在 IDEA 中是存在於項目下的。 這裡我們先創建一個空項目,當然已經有項目了, ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...