Python 特定のファイルを指定したフォルダに移動

Pythonファイル移動 Python
<開発環境>
Windows10 home 64bit
Python 3.10.9
selenium 3.141.0

拡張子を指定してそのファイルのみ指定したフォルダに移動する方法です。

指定したフォルダの中に指定した拡張子以外のファイルがあっても移動されないので安心して下さい。

フォルダAの中身を確認します。今回2つのtxtファイルを移動させていきます。

フォルダAからフォルダBへ移動させるためフォルダパスを指定します。

#移動元と移動先のフォルダを定義する。
folder_a = "C:\\Users\\ユーザー名\\フォルダ名\\FILE\\フォルダA\\"
folder_b = "C:\\Users\\ユーザー名\\フォルダ名\\FILE\\フォルダB\\"

拡張子を指定してファイルをリスト化します。

# フォルダ内のファイルをリスト化する
list1 = os.listdir(folder_a)
# txtファイルだけをリスト化する
list_txt = [s for s in list1 if ((".txt") in s)]

printで中身を確認できます。結果:[‘test1.txt’, ‘test2.txt’]になれば成功です。

リスト化したファイル数をforを使って移動していきます。

#対象のファイル分処理を繰り返します
for i in range(len(list_txt)):
    file_a = os.path.join(folder_a, list_txt[i])
    file_b = os.path.join(folder_b, list_txt[i])

    shutil.move(file_a, folder_b)
    print(list_txt[i] + "が移動されました")

実行してtxtファイルがフォルダBへ移動されていれば成功です。確認してみましょう。

次回、移動先のフォルダを作成したり移動先に同じファイルがある場合は移動しないなどの条件を入れたコードを説明できたらと思います。

コメント

タイトルとURLをコピーしました