在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

python自動化腳本辦公-文件整理

麥辣雞腿堡 ? 來源:Python都知道 ? 作者:了不起 ? 2023-07-20 09:49 ? 次閱讀

今天講解文件整理腳本的實現過程。這是一個很有用的技能,可以幫助你管理你的電腦上的各種文件。需求如下:

  • 需求內容:給定一個打算整理的文件夾目錄,這個腳本可以將該目錄下的所有文件都揪出來,并且根據后綴名歸類到不同的文件夾里。
  • python能力:使用python的內置模塊os和shutil來操作文件和目錄,使用glob模塊來匹配文件名,使用with語句來打開和關閉文件。
  • 實現步驟:
    • 導入需要的模塊
    • 定義要整理的目錄和要創建的子目錄
    • 遍歷目錄下的所有文件,獲取文件名和后綴名
    • 根據后綴名判斷文件屬于哪個子目錄,如果不存在則創建
    • 使用shutil模塊的move函數將文件移動到對應的子目錄
    • 打印完成信息

教程面對的是小白級別的讀者,所以我會盡量用簡單明了的語言來解釋每一行代碼的作用,并且給出完整的代碼示例。我希望你能跟著我一起學習,并且在自己的電腦上運行和測試這個腳本。

導入python的內置模塊

首先,我們需要導入一些python的內置模塊,它們可以幫助我們操作文件和目錄。os模塊提供了一些基本的文件系統功能,比如獲取文件路徑,創建和刪除目錄等。shutil模塊提供了一些高級的文件操作功能,比如復制和移動文件等。glob模塊可以讓我們用通配符來匹配文件名,比如*.txt可以匹配所有后綴名為txt的文件。with語句可以讓我們方便地打開和關閉文件,不用擔心忘記關閉或者出現異常。下面是導入模塊的代碼:

# 導入需要的模塊
import os
import shutil
import glob

定義要整理的目錄和要創建的子目錄

接下來,我們需要定義要整理的目錄和要創建的子目錄。我們假設要整理的目錄是D:test,里面有各種類型的文件,比如文本文件,圖片文件,音頻文件等。我們想要把這些文件按照后綴名歸類到不同的子目錄里,比如txt文件放到D:testtxt,jpg文件放到D:testjpg,mp3文件放到D:testmp3等。我們可以用一個字典來存儲這些子目錄的信息,鍵是后綴名,值是對應的子目錄路徑。下面是定義目錄的代碼:

# 定義要整理的目錄和要創建的子目錄
source_dir = "D:test" # 要整理的目錄
sub_dirs = { # 子目錄信息
    ".txt": "D:testtxt",
    ".jpg": "D:testjpg",
    ".mp3": "D:testmp3"
}

遍歷目錄下的所有文件,獲取文件名和后綴名

然后,我們需要遍歷要整理的目錄下的所有文件,獲取文件名和后綴名。我們可以用os模塊的listdir函數來獲取目錄下的所有文件和子目錄,然后用os模塊的path.splitext函數來分割文件名和后綴名。我們還需要判斷是否是文件,因為listdir函數會返回子目錄,我們不需要處理它們。我們可以用os模塊的path.isfile函數來判斷是否是文件。下面是遍歷目錄的代碼:

# 遍歷目錄下的所有文件,獲取文件名和后綴名
for item in os.listdir(source_dir): # 遍歷目錄
    if os.path.isfile(os.path.join(source_dir, item)): # 判斷是否是文件
        file_name, file_ext = os.path.splitext(item) # 分割文件名和后綴名
        print(file_name, file_ext) # 打印文件名和后綴名

根據后綴名判斷文件屬于哪個子目錄

接著,我們需要根據后綴名判斷文件屬于哪個子目錄,如果不存在則創建。我們可以用字典的get方法來根據鍵獲取值,如果鍵不存在則返回None。我們可以用os模塊的path.exists函數來判斷子目錄是否存在,如果不存在則用os模塊的makedirs函數來創建。下面是判斷和創建子目錄的代碼:

# 根據后綴名判斷文件屬于哪個子目錄,如果不存在則創建
        sub_dir = sub_dirs.get(file_ext) # 根據后綴名獲取子目錄路徑
        if sub_dir: # 如果子目錄路徑存在
            if not os.path.exists(sub_dir): # 如果子目錄不存在
                os.makedirs(sub_dir) # 創建子目錄
                print(f"Created {sub_dir}") # 打印創建信息

將文件移動到對應的子目錄

接下來,我們需要使用shutil模塊的move函數將文件移動到對應的子目錄。我們需要提供源文件路徑和目標文件路徑作為參數。我們可以用os模塊的path.join函數來拼接路徑。下面是移動文件的代碼:

# 使用shutil模塊的move函數將文件移動到對應的子目錄
            source_file = os.path.join(source_dir, item) # 源文件路徑
            target_file = os.path.join(sub_dir, item) # 目標文件路徑
            shutil.move(source_file, target_file) # 移動文件
            print(f"Moved {source_file} to {target_file}") # 打印移動信息

打印完成信息

最后,我們需要打印完成信息,告訴用戶整理工作已經完成。下面是打印完成信息的代碼:

# 打印完成信息
print("Done!")

這樣,我們就完成了一個簡單的文件整理腳本。完整的代碼如下:

# 導入需要的模塊
import os
import shutil
import glob

# 定義要整理的目錄和要創建的子目錄
source_dir = "D:	est" # 要整理的目錄
sub_dirs = { # 子目錄信息
    ".txt": "D:	est	xt",
    ".jpg": "D:	estjpg",
    ".mp3": "D:	estmp3"
}

# 遍歷目錄下的所有文件,獲取文件名和后綴名
for item in os.listdir(source_dir): # 遍歷目錄
    if os.path.isfile(os.path.join(source_dir, item)): # 判斷是否是文件
        file_name, file_ext = os.path.splitext(item) # 分割文件名和后綴名
        print(file_name, file_ext) # 打印文件名和后綴名

        # 根據后綴名判斷文件屬于哪個子目錄,如果不存在則創建
        sub_dir = sub_dirs.get(file_ext) # 根據后綴名獲取子目錄路徑
        if sub_dir: # 如果子目錄路徑存在
            if not os.path.exists(sub_dir): # 如果子目錄不存在
                os.makedirs(sub_dir) # 創建子目錄
                print(f"Created {sub_dir}") # 打印創建信息

            # 使用shutil模塊的move函數將文件移動到對應的子目錄
            source_file = os.path.join(source_dir, item) # 源文件路徑
            target_file = os.path.join(sub_dir, item) # 目標文件路徑
            shutil.move(source_file, target_file) # 移動文件
            print(f"Moved {source_file} to {target_file}") # 打印移動信息

# 打印完成信息
print("Done!")

如果你在自己的電腦上運行這個腳本,你會看到類似下面的輸出:

test1 .txt
test2 .jpg
test3 .mp3
Created D:testtxt
Moved D:testtest1.txt to D:testtxttest1.txt
Created D:testjpg
Moved D:testtest2.jpg to D:testjpgtest2.jpg
Created D:testmp3
Moved D:testtest3.mp3 to D:testmp3test3.mp3
Done!
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 自動化
    +關注

    關注

    29

    文章

    5753

    瀏覽量

    82264
  • 文件
    +關注

    關注

    1

    文章

    578

    瀏覽量

    25250
  • python
    +關注

    關注

    56

    文章

    4825

    瀏覽量

    86355
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    介紹10個Python自動化腳本

    在這個自動化時代,我們有很多重復無聊的工作要做。想想這些你不再需要一次又一次地做的無聊的事情,讓它自動化,讓你的生活更輕松。那么在本文中,我將向您介紹 10 個 Python 自動化
    發表于 10-17 09:27 ?1067次閱讀

    10個Python腳本來自動化你的日常任務

    今天浩道跟大家分享幾個關于python自動化日常工作的實用案例腳本
    發表于 10-25 09:04 ?797次閱讀

    10個殺手級的Python自動化腳本

    今天浩道跟大家分享10個日常工作中用到的python自動化腳本。讓你感受一番python簡單強大之處!
    發表于 11-28 11:07 ?816次閱讀

    python自動化控制設備 精選資料分享

    python自動化控制設備,辛辛苦苦讀個大學或者研究生誰不想每天早九晚五呢?誰不想天天坐辦公室呢?普通本科機械設計制造及其自動化專業,本科期間參加過高數、數學建模、機器人、數控、無碳小
    發表于 07-19 07:00

    自動化測試腳本開發技巧

    開發自動化測試腳本的技巧和心得軟件測試 增量式調試腳本 錄制測試腳本,和其他的軟件開發成果一樣,會變得非常大。為了可以成功的回放,需要調試幾百行的代碼,為了參數
    發表于 03-26 16:24 ?53次下載

    iOS自動化打包腳本

    iOS自動化打包腳本,地址:(https://github.com/hades0918/ipapy) iOS項目自動打包腳本 1.腳本
    發表于 10-12 16:47 ?0次下載

    Python】如何將Python腳本打包成exe可執行文件

    Python實用技巧】如何將Python腳本打包成exe可執行文件
    的頭像 發表于 08-18 12:40 ?1.9w次閱讀
    【<b class='flag-5'>Python</b>】如何將<b class='flag-5'>Python</b><b class='flag-5'>腳本</b>打包成exe可執行<b class='flag-5'>文件</b>

    云測試自動化中的Python

      用于測試的編程需要與開發應用程序的編程不同的方法。如果你想要一種專門用于測試編碼的簡單而精簡的語言,Python 是一個不錯的選擇。Python 測試自動化框架為驗證、數據生成和腳本
    的頭像 發表于 12-09 14:53 ?1038次閱讀

    如何創建自動化腳本

    在前面的 bash 初學者系列文章中,我們介紹了關于 bash 的一些基礎知識,在了解了這些基礎知識之后,可以嘗試創建一些自動化腳本,來完成一些相對枯燥重復的管理任務。
    的頭像 發表于 01-04 16:50 ?3876次閱讀
    如何創建<b class='flag-5'>自動化</b><b class='flag-5'>腳本</b>

    10個殺手級的Python自動化腳本分享

    重復性任務總是耗時且無聊,想一想你想要一張一張地裁剪 100 張照片或 Fetch API、糾正拼寫和語法等工作,所有這些任務都很耗時,為什么不自動化它們呢?在今天的文章中,我將與你分享 10 個 Python [自動化
    的頭像 發表于 01-06 15:34 ?934次閱讀

    分享10個實用的Python自動化腳本

    重復性任務總是耗時且無聊,想一想你想要一張一張地裁剪 100 張照片或 Fetch API、糾正拼寫和語法等工作,所有這些任務都很耗時,為什么不自動化它們呢?在今天的文章中,我將與你分享 10 個 Python 自動化
    的頭像 發表于 01-21 15:58 ?1501次閱讀

    使用Python腳本實現自動化運維任務

    許多運維工程師會使用 Python 腳本來自動化運維任務。Python 是一種流行的編程語言,具有豐富的第三方庫和強大的自動化能力,適用于許多不同的領域。
    的頭像 發表于 04-08 10:36 ?1978次閱讀

    Facebook群組自動化python – 網絡自動化

    電子發燒友網站提供《Facebook群組自動化python – 網絡自動化.zip》資料免費下載
    發表于 07-05 14:26 ?0次下載
    Facebook群組<b class='flag-5'>自動化</b><b class='flag-5'>python</b> – 網絡<b class='flag-5'>自動化</b>

    keil自動化編譯腳本

    這是一個 keil 的自動化編譯腳本,可被其他腳本或程序調用,接收參數并按參數編譯 keil 工程,而不必打開 keil 軟件,實現程序上的自動化
    的頭像 發表于 10-16 17:04 ?2754次閱讀
    keil<b class='flag-5'>自動化</b>編譯<b class='flag-5'>腳本</b>

    如何使用Python編寫腳本來自動發送郵件

    Python是一種非常流行的編程語言,可以用于多種用途,包括自動化任務。其中一個常見的自動化任務是自動發送郵件。在本文中,我們將介紹如何使用Pyth
    的頭像 發表于 12-07 11:36 ?1698次閱讀
    主站蜘蛛池模板: yiren22亚洲综合高清一区 | 亚洲已满18点击进入在线观看 | 美女视频毛片 | 亚洲高清国产拍精品影院 | 99久久国产免费中文无字幕 | 女69女人poren25| 淫香色香 | 69日本xxxhd| 日本黄色免费大片 | 欧美成人亚洲欧美成人 | 午夜男人网 | 免费看一级视频 | 亚洲爱爱网站 | 午夜啪啪免费视频 | 欧美黄色录像 | 成人一级网站 | 日本特黄特色大片免费看 | 婷婷性| 免费网站色 | 亚欧美视频 | 亚洲人成网站色7799在线播放 | 色妇网| 天天干天天干天天 | 欧美成人看片一区二区三区 | 日韩免费一级片 | 四虎影视亚洲精品 | 欧美性色生活片天天看99 | 欧美一区二区视频在线观看 | 国产片一级特黄aa的大片 | 老湿影院免费体验区 | 丁香视频在线 | 久久久久久久成人午夜精品福利 | 在线看黄网站 | 好硬好湿好爽再深一点h | 曰本三级香港三级人妇99视频 | 国产国拍亚洲精品mv在线观看 | 日日夜夜天天操 | 俺来也俺去啦久久综合网 | 亚洲一区二区三区免费在线观看 | 91啦中文在线观看 | 在线看一区二区 |