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!
推薦閱讀:
- Python中刪除文件的幾種方法實例
- 十個Python自動化常用操作,即拿即用
- Python文件目錄操作常用模塊的使用詳解
- Python中的pathlib庫使用詳解
- Python標準庫pathlib操作目錄和文件