欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python腳本實(shí)現(xiàn)一鍵自動整理辦公文件

 更新時間:2022年02月16日 09:42:36   作者:車?yán)遄覢  
這篇文章主要介紹了Python實(shí)現(xiàn)腳本一鍵自動整理辦公文件,文件下載文件夾就變得亂七八糟,整理的時候非常痛苦,巴不得有一個自動化的工具幫我歸類文檔。下面小編就給大家分享自動化整理文件的小技巧,需要的朋友可以參考一下文章內(nèi)容

導(dǎo)語:

舉例:Python做一個根據(jù)后綴名整理文件的工具,先來看看效果:

自動整理前:

自動整理后:

這樣看起來就好很多了。

1.準(zhǔn)備

開始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒有,可以訪問這篇文章:python Windows最新版本安裝教程

我們只需要修改源代碼主程序中調(diào)用 auto_organize函數(shù)的參數(shù)即可完成對對應(yīng)文件夾的整理,比如我想整理  C:\Users\83493\Downloads 文件夾:

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

如上所示:修改代碼第61行的文件夾地址即可。修改完成后運(yùn)行該腳本:

python auto_files.py

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

2.原理

這份代碼的原理很簡單,為了整理這些文件,我們要遍歷當(dāng)前指定的文件夾:如果是文件夾則跳過,如果是文件則檢測后綴,分類到對應(yīng)的文件夾中。文件夾名字及其對應(yīng)的文件后綴如下:

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"],
? ? "可執(zhí)行程序": [".exe"],
}

接下來是自動整理的部分代碼,先遍歷指定的文件夾,識別后綴并分類到對應(yīng)的文件夾中。

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

還有出現(xiàn)不存在在我們字典里的后綴的情況,把它們分類到名為 其他文件 的文件夾中:

try:
? ? os.mkdir(dirval + "\\" +"其他文件")
except:
? ? pass
?
for dir in 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

3.自定義整理

如果你并不想按照設(shè)定好的文件整理,希望能自定義地將某些特定后綴的文件放到另一個文件夾,比如 .py 文件統(tǒng)一收納到“Python腳本”文件夾中,你可以這么改 DIRECTORIES 變量:

DIRECTORIES = {
? ? # ......
? ? "編程": [".py",".html5", ".html", ".htm", ".xhtml",".c",".cpp",".java",".css"],
? ? # ......
}

改動后:

DIRECTORIES = {
? ? # ......
? ? "編程": [".html5", ".html", ".htm", ".xhtml",".c",".cpp",".java",".css"],
? ? "Python腳本": [".py"],
? ? # ......
}

我們可以按照這個方法,自定義收納那些你需要整理收納的文件格式。

如果只想對 DIRECTORIES 變量里那些后綴的文件進(jìn)行整理,不屬于這些后綴的文件則不進(jìn)行整理,不需要放到“其他文件”目錄下,此時要怎么做?

很簡單,你只需要刪除以下部分代碼就可以完成這個功能:

try:
? ? ? ? os.mkdir(dirval + "\\" +"其他文件")
? ? except:
? ? ? ? pass
?
? ? for dir in 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
# ......

小編覺得這樣就很方便。

到此這篇關(guān)于Python實(shí)現(xiàn)腳本一鍵自動整理辦公文件的文章就介紹到這了,更多相關(guān)Python實(shí)現(xiàn)自動整理文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Matplotlib繪圖基礎(chǔ)之配置參數(shù)詳解

    Matplotlib繪圖基礎(chǔ)之配置參數(shù)詳解

    Matplotlib?提供了大量配置參數(shù),這些參數(shù)可以但不限于讓我們從整體上調(diào)整通過?Matplotlib?繪制的圖形樣式,下面我們就來看看如何巧妙的運(yùn)用這些參數(shù)吧
    2023-08-08
  • python?動態(tài)規(guī)劃問題解析(背包問題和最長公共子串)

    python?動態(tài)規(guī)劃問題解析(背包問題和最長公共子串)

    這篇文章主要介紹了python?動態(tài)規(guī)劃(背包問題和最長公共子串),在動態(tài)規(guī)劃中,你要將某個指標(biāo)最大化。在這個例子中,你要找出兩個單詞的最長公共子串。fish和fosh都包含的最長子串是什么呢,感興趣的朋友跟隨小編一起看看吧
    2022-05-05
  • python基礎(chǔ)之多態(tài)

    python基礎(chǔ)之多態(tài)

    這篇文章主要介紹了python多態(tài),實(shí)例分析了Python中返回一個返回值與多個返回值的方法,需要的朋友可以參考下
    2021-10-10
  • Python中import導(dǎo)入上一級目錄模塊及循環(huán)import問題的解決

    Python中import導(dǎo)入上一級目錄模塊及循環(huán)import問題的解決

    Python中的import語句導(dǎo)入模塊相信大家再熟悉不過了,這里我們會來講解Python中import導(dǎo)入上一級目錄模塊及循環(huán)import問題的解決,需要的朋友可以參考下
    2016-06-06
  • python編輯用戶登入界面的實(shí)現(xiàn)代碼

    python編輯用戶登入界面的實(shí)現(xiàn)代碼

    這篇文章主要介紹了python編輯用戶登入界面的實(shí)現(xiàn)代碼,非常不錯,代碼簡單易懂,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-07-07
  • python快速入門題目詳解

    python快速入門題目詳解

    下面小編就為大家?guī)硪黄焖偃腴Tpython的題目詳解小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2021-11-11
  • python中對_init_的理解及實(shí)例解析

    python中對_init_的理解及實(shí)例解析

    這篇文章主要介紹了python中對_init_的理解及實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10
  • python中is與雙等于號“==”的區(qū)別示例詳解

    python中is與雙等于號“==”的區(qū)別示例詳解

    Python中有很多運(yùn)算符,下面這篇文章主要給大家介紹了關(guān)于python中is與雙等于號“==”區(qū)別的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-11-11
  • Python 如何利用ffmpeg 處理視頻素材

    Python 如何利用ffmpeg 處理視頻素材

    ffmpeg是一套可以用來記錄、轉(zhuǎn)換數(shù)字音頻、視頻,并能將其轉(zhuǎn)化為流的開源計(jì)算機(jī)程序,使用這個神器,便可以處理各種視頻素材內(nèi)容,極度舒適。本文將介紹如何利用ffmpeg對視頻素材進(jìn)行處理,感興趣的可以了解一下
    2021-11-11
  • Python Matplotlib 庫使用指南

    Python Matplotlib 庫使用指南

    這篇文章主要介紹了Python Matplotlib 庫使用基本指南,通過本教程,我們學(xué)習(xí)了使用 Matplotlib 創(chuàng)建各種類型的圖表和圖形,Matplotlib 提供了豐富的函數(shù)和選項(xiàng),以滿足不同的數(shù)據(jù)可視化需求,需要的朋友可以參考下
    2024-01-01

最新評論