Python實現如何根據文件後綴進行分類

如下圖所示的文件,我們按文件名後綴對文件進行分類

使用os和shutil

首先導入對應的模塊,將目標文件夾和到分類到的文件夾定義

import os
import shutil

src_folder = 'E:\文檔\要分類的文件'
tar_folder = 'E:\文檔\分類後的文件'

讀取目標文件夾下的所有文件

files = os.listdir(src_folder)

獲取每一個文件的完整路徑

for file in files:
    # 將每個文件的完整路徑拼接出來
    src_path = src_folder + '\\' + file
    print(src_path)

分組之後的文件展示

獲取分組之後的文件夾路徑

for file in files:
    # 將每個文件的完整路徑拼接出來
    src_path = src_folder + '\\' + file

    if os.path.isfile(src_path):
        # 移動之後的文件路徑
        # 將文件民按點分割 取最後一位 即是目標的路徑
        tar_path = tar_folder + '\\' + file.split('.')[-1]
        print(tar_path)

移動文件到目標文件夾

		# 如果文件夾不存在則創建
        if not os.path.exists(tar_path):
            os.mkdir(tar_path)
        # 移動文件    
        shutil.move(src_path, tar_path)

完整代碼

import os
import shutil

src_folder = 'E:\文檔\要分類的文件'
tar_folder = 'E:\文檔\分類後的文件'

files = os.listdir(src_folder)

for file in files:
    # 將每個文件的完整路徑拼接出來
    src_path = src_folder + '\\' + file

    if os.path.isfile(src_path):
        # 移動之後的文件路徑
        # 將文件民按點分割 取最後一位 即是目標的路徑
        tar_path = tar_folder + '\\' + file.split('.')[-1]
        # 如果文件夾不存在則創建
        if not os.path.exists(tar_path):
            os.mkdir(tar_path)
        # 移動文件
        shutil.move(src_path, tar_path)

使用pathlib

使用Path讀取文件夾下的文件

使用Path()創建路徑對象,使用 glob獲取文件下的所有文件

from pathlib import Path

src_folder = Path('E:\文檔\要分類的文件')
tar_folder = Path('E:\文檔\分類後的文件')

files = src_folder.glob('*')

for file in files:
    print(file.name)

獲取目標文件夾

將目標文件夾拼接文件後綴,‘/’ 可以用作Path後用於拼接,file.suffix 可以獲取文件名保存後綴,.strip(‘.’)獲取文件後綴名

for file in files:
    if file.is_file():
        tar_path =  tar_folder / file.suffix.strip('.')
        print(tar_path)

移動文件

        if not tar_path.exists():
            tar_path.mkdir(parents=True)
        file.replace(tar_path / file.name) 

到此這篇關於Python實現如何根據文件後綴進行分類的文章就介紹到這瞭,更多相關Python 文件分類內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: