<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 一鍵整理電腦桌面、文件夾,瞬間清爽了

          共 5311字,需瀏覽 11分鐘

           ·

          2022-11-25 01:34

          關(guān)注+星標(biāo),每天學(xué)習(xí)Python新技能


          大家好,我是小碼哥。今天分享一個小技能:

          隨時間流逝,文件夾下的文件可能雜亂無章,如下圖:



          如果我們用手動移動處理的方式,這將是非常耗時和無論的事情。

          為了提升效率,我們利用Python可以輕松整理文件夾,以按照文件類型存放在指定文件夾下,比如把所有文檔 ‘docx’存放在文件夾 “文檔”下,效果如下:


          01

          定義一個函數(shù)處理各種文件


          01 import os
          02 import shutil
          03 
          04 def moveFile(srcfile, fileType, srcPath, destPath):
          05     '''
          06     移動文件srcfile到指定目錄 destPath
          07     srcPath是原來的文件夾
          08     fileType是文件類型
          09     '''

          10     # 判斷擴展名是否是WORD
          11     if os.path.splitext(srcfile)[1] == fileType:
          12         print(f'將要移動 {i}')
          13         # 判斷目的文件夾是否存在
          14         if os.path.exists(destPath):
          15             # 拼接文件 srcfile 的絕對路徑
          16             fileName = os.path.join(srcPath, srcfile)
          17             shutil.move(fileName, destPath)
          18         else:
          19             os.makedirs(destPath) # 不存在則創(chuàng)建
          20             # 創(chuàng)建完文件夾之后在移動
          21             fileName = os.path.join(srcPath,i)
          22             shutil.move(fileName, destPath)


          第1行代碼是導(dǎo)入os模塊

          第2行代碼是導(dǎo)入高級文件處理模塊 shutil。它與模塊os功能互補,主要功能包含復(fù)制、移動、重命名和刪除文件以目錄。這里主要使用shutil模塊的move(src,dst)方法。它的功能是將文件src移動到dst下。如果dst是一個目錄,將文件移動到目錄之下;如果dst是一個文件名稱,則將文件移動到目標(biāo)目錄下,并且重命名為dst。在本例中,我們的dst是文件夾,表示把文件移動到dst之下。

          第4-22行代碼是定義函數(shù)moveFile()。它的作用是真正實現(xiàn)整理文件夾的功能,把不同類型的文件移動到指定的文件夾。

          第4行代碼是用關(guān)鍵字def定義函數(shù)moveFile(srcfile, fileType, srcPath, destPath)。它包含4個參數(shù),含義如下:

          參數(shù)srcfile是指需要移動的文件名字,比如 ‘古詩詞.docx’等

          參數(shù)fileType是指文件srcfile的類型,比如 ‘docx’等

          參數(shù)srcPath是指存放文件srcfile的原來目錄

          參數(shù)destPath是指將要移動到的目標(biāo)目錄。

          第11行代碼是4.2.2節(jié)中的內(nèi)容。它的目的是判斷文件srcfile的類型是否是 fileType。

          第14-22行代碼是if-else結(jié)構(gòu)。它是用os.path.exists(destPath)方法判斷目標(biāo)目錄destPath是否在存在。如果不存在,我們在第19行代碼用os方法的makedirs(destPath)創(chuàng)建。

          第16行代碼是用os.path.join(srcPath, srcfile)方法拼接文件的路徑。也就是查找文件srcfile原來的路徑,比如文件 ‘古詩詞.docx’的路徑是 ‘F:\零基礎(chǔ)輕松學(xué) Python 辦公自動化\python_do_file\第4章\data\古詩詞.docx’,并用fileName表示拼接后的路徑。

          第17行代碼是用shutil.move(fileName, destPath)方法把拼接后的文件路徑fileName移動到目標(biāo)目錄destPath下。

          第21和22行代碼同16和17行代碼。


          02

          定義移動文件的路徑


          25 # 目錄路徑。絕對路徑或者相對路徑均可
          26 srcPath = r'F:\零基礎(chǔ)輕松學(xué) Python 辦公自動化\python_do_file\第4章\data'
          27 
          28 # 不同類型的文件路徑
          29 DirPPT=r"F:\零基礎(chǔ)輕松學(xué) Python 辦公自動化\python_do_file\第4章\generated_data\演講文稿"
          30 DirWord=r'F:\零基礎(chǔ)輕松學(xué) Python 辦公自動化\python_do_file\第4章\generated_data\文檔'
          31 DirExcel=r'F:\零基礎(chǔ)輕松學(xué) Python 辦公自動化\python_do_file\第4章\generated_data\銷售數(shù)據(jù)'
          32 DirPic=r'F:\零基礎(chǔ)輕松學(xué) Python 辦公自動化\python_do_file\第4章\generated_data\圖片'
          33 DirText=r'F:\零基礎(chǔ)輕松學(xué) Python 辦公自動化\python_do_file\第4章\generated_data\文本文件'
          34 
          35 # 查看所有的文件與文件夾
          36 allFile = os.listdir(srcPath)

          第26行代碼是用變量srcPath表示文件的絕對路徑。也就是我們將要整理的文件夾。讀者可以任意修改路徑名字。

          第29-33行代碼是為不同類型的文件指定不同的文件夾,比如為文檔類型的文件指定文件夾 ‘F:\零基礎(chǔ)輕松學(xué) Python 辦公自動化\python_do_file\第4章\generated_data\文檔’,并用變量DirWord表示。這里的路徑都是絕對路徑,讀者可以任意修改。

          第36行代碼是查看目錄srcPath下的所有文件與文件夾,并用變量allFile表示。


          03

          利用 For 循環(huán)實現(xiàn)移動文件


          38 # 移動指定類型文件到指定文件夾
          39 for i in allFile:
          40     # 移動所有 PPT文件到 DirPPT
          41     moveFile(i, '.pptx', srcPath, DirPPT)
          42     # 移動所有 word文件 DirWord
          43     moveFile(i, '.docx', srcPath, DirWord)
          44     # 移動所有 excel 文件 DirExcel
          45     moveFile(i, '.xlsx', srcPath, DirExcel)
          46     # 移動所有 PNG 文件 PIC
          47     moveFile(i, '.png', srcPath, DirText)
          48     # 移動所有 text 文件 PIC
          49     moveFile(i, '.text', srcPath, DirText)


          第39-49行代碼是用for循環(huán)處理目錄srcPath下所有文件,并用變量i表示每一個文件。

          第41行代碼是調(diào)用移動文件的函數(shù)moveFile(i, '.pptx', srcPath, DirPPT)。通過第4行代碼,它需要4個形式參數(shù)。因此,我們調(diào)用的時候也用了4個參數(shù),并且稱為實際參數(shù),分別是需要移動的文件i、文件類型 ‘.pptx’、需要整理的文件夾srcPath以及目的文件夾DirPPT。這一行代碼是把文件i移動到ppt目錄下。

          同理,第42-49行代碼是把不同類型的文件移動到不同的文件夾。讀者可以修改這個參數(shù)的調(diào)用參數(shù)以移動更多類型的文件到指定文件夾。


          04

          運行上述代碼,輸出結(jié)果如下:


          將要移動 11.5-案例.docx

          將要移動 12.5.2-轉(zhuǎn)化表格為一個excel文件.xlsx

          將要移動 14.4.3-添加標(biāo)題.pptx

          將要移動 14.4.4-添加文本框.pptx

          將要移動 14.4.4.2-插入段落.pptx

          將要移動 14.4.5-添加圖片.pptx

          將要移動 14.4.5_多個幻燈片添加圖片.pptx

          將要移動 3.5.1-統(tǒng)計文字出現(xiàn)的次數(shù).text

          將要移動 3.5.2-大小寫轉(zhuǎn)化.text

          將要移動 古詩詞.docx

          將要移動 完美解決.png

          將要移動 實戰(zhàn)圈.png

          將要移動 租客信息匯總.xlsx

          將要移動 租房合同模板.docx

          查看文件夾 ‘generated_data’,同類型的文件被整理在同一個文件夾下,比如文檔文件夾下是‘docx’類型文件,如上圖所示。

          是不是很簡單?趕快試一下吧!

          推薦小碼哥新書!

          小碼哥新手《Python + Excel/Word/PPT一本通》正式上市了!書中詳細(xì)介紹了零基礎(chǔ)用Python實現(xiàn)辦公自動化的各方面知識,提高職場辦公效率,附贈PPT/源代碼/重點教學(xué)視頻講解和作者VIP一對一指導(dǎo)。


          內(nèi)容介紹《Python + Excel/Word/PPT 一本通》內(nèi)容介紹



          掃碼購買



          ▼點擊閱讀原文,了解本書詳情~

          瀏覽 17
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <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>
                  www.欧美黄 | 奇米影视狠狠干 | 亚洲黄色电影大全 | 国产无码AV毛片 | 色五月亚洲 |