<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

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

          共 2813字,需瀏覽 6分鐘

           ·

          2020-12-29 10:57

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


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


          自動整理前:



          自動整理后:



          效果非常好,舒服多了如果你想要直接下載源代碼試試看,請?jiān)诠娞柡笈_回復(fù)?文件自動整理?獲得源代碼下載地址。

          使用

          1.準(zhǔn)備

          開始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒有,請?jiān)L問這篇文章:超詳細(xì)Python安裝指南?進(jìn)行安裝。

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

          你只需要修改源代碼主程序中調(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


          最后再把以上這些部分整理成函數(shù)進(jìn)行調(diào)用即可。在Python實(shí)用寶典公眾號后臺回復(fù)?文件自動整理?獲得完整源代碼下載地址。


          如果你喜歡今天的Python 教程,請持續(xù)關(guān)注Python實(shí)用寶典,如果對你有幫助,麻煩在下面點(diǎn)一個贊/在看,有任何問題都可以在下方留言,我們會耐心解答的!


          點(diǎn)擊下方閱讀原文可以獲取所有代碼和鏈接哦!

          Python實(shí)用寶典?(pythondict.com)

          不只是一個寶典

          歡迎關(guān)注公眾號:Python實(shí)用寶典
          瀏覽 103
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  青青草在线观看免费视频 | 性爱插入毛片免费视频 | 韩国一区二区在线黄 | 国产丝袜足交在线观看 | 免费的黄色国产视频 |