python

murata ファイルを拡張子ごとにフォルダへ振り分け

import os
import pathlib
import shutil

# 「Untitled.html」というようなファイル名+拡張子のリスト用
file_list = []


# after_file_list = []

# . が含まれる者すべてを抽出
for file in os.listdir("."):
    # ファイルかどうかを判定し、フォルダ等を除外
    is_file = os.path.isfile(file)
    
    # このpyファイル自身でないか
    # jupyter notebookの場合、エラーになるので、直接ファイル名入力
    not_this_file = os.path.basename(__file__) != file
    
    if is_file and not_this_file:

        file_list.append(file)
        # after_file_list.append(after_file_name)

current_dir = os.getcwd()

for target_file in file_list:

    # 拡張子を抽出
    target_ext = target_file.split(".")[-1]
    # 拡張子が付いた新しいフォルダパスを作成
    new_folder_path = os.path.join(current_dir,target_ext)
    
    # 現在のファイルパスを作成
    current_file_path = os.path.join(current_dir,target_file)
    
    # 新しいファイルパスを作成
    new_file_path = os.path.join(new_folder_path,target_file)
    
    # 新しく拡張子名のフォルダを作成。
    os.makedirs(new_folder_path,exist_ok=True)

    # ファイルを移動。(既存のファイルがあってもエラーにならないように、絶対パスで記述)
    shutil.move(current_file_path, new_file_path)

Was this helpful?