Pythonでフォルダ内のファイル名を取得・名前を変更する方法

Pythonを使うとたとえ数百個のファイルがあったとしても一瞬で変更できてしまいます。そのときにつかえるosモジュールの使い方を紹介します。

この内容を理解するにあたり、ルートディレクトリ、カレントディレクトリ、相対パス、絶対パスのを知っておく必要があります。

関連記事

今回は「ルートディレクトリ・カレントディレクトリ・ファイルパス」の説明をします。 もし、「ディレクトリ」という言葉が分からない場合は下の記事をご覧ください。 [sitecard subtitle=関連記事 url="https[…]

超基本 ファイルパスとルートディレクトリ カレントディレクトリ
関連記事

パソコンを使ったことがあるのなら一度は聞いたことがあるとは追うこれらの言葉「ファイル・フォルダ・ディレクトリ」の違いを説明していきたいと思います。 本棚に本がたくさん入っているようにフォルダ(ディレクトリ)の中にファイルが入っている[…]

ファイル・フォルダ・ディレクトリの違いと拡張子

フォルダ内のファイル名取得

os.listdir関数

  • osモジュールをインポート
  • 引数にフォルダのディレクトリを渡す
    • 絶対パスでも相対パスでもOK
  • 戻り値はフォルダ内のファイル・フォルダのリスト

このフォルダの中身をos.listdir関数で出力すると以下のようになります。今回は絶対パスでフォルダを指定しました。

  • 「folder1」に含まれるファイル出力されない
  • 引数にファイルパスを指定すると「NotADirectoryError」
    • 必ず「フォルダのパス」をわたすこと

名前の変更

os.rename関数

  • osモジュールをインポート
  • 引数に変更前のパスと変更後のパスを渡す
  • ファイル名もフォルダ名も変更可能

今回も同じようにblogフォルダを例に名前を変更していきます。まずは「sample.txt」を「sample_after.txt」に変更します。

何も出力されませんがファイルの名前は変更されています。最初に変更前、後ろに変更後にパスを渡します。順番に注意ですね。

次に、「folder2」の名前を「folder2_after」に変更します。ファイル名の変更もフォルダ名の変更も同じ手順で行えます。

まとめ

  • フォルダ内をリスト化:os.listdir関数
  • 名前の変更:os.rename関数

当ブログではPython初心者が独学で習得するためのカリキュラムを公開中!

初心者がPythonを独学で習得できたロードマップはコチラ

Pythonでフォルダ内のファイル名を取得・名前を変更する方法
最新情報をチェックしよう!