【Python入門】.csvファイルだけを抽出・分類する方法|endswith()の使い方

目次

対応環境

  • エディション:Windows 10 Pro
  • バージョン:20H2

背景

Pythonで作業をしていると、フォルダ内に大量のファイルが溜まってしまうことがあります。

その中から**「.csvファイルだけを抽出したい」**と考え、今回新たに方法を学びました。

解決策:endswith()で拡張子を判別する

ファイル名の末尾に注目して拡張子を判別するには、Python標準のendswith()関数を使用します。

今回は、デスクトップ上の「data」フォルダにたくさんのファイルが保存されている想定で、サンプルプログラムを作成しました。

サンプルプログラム

import os

os.chdir("C:/Users/mori/デスクトップ/data/")
files = os.listdir()

file_list = []
file_csv = ".csv"

for read_file in files:
    if read_file.endswith(file_csv):
        file_list.append(read_file)

プログラム解説

(空白行は省略しています)

1行目、osライブラリをインポートしています。

2行目、os.chdir()を使い、デスクトップ上の「data」フォルダに移動しています。

3行目、そのフォルダ内に存在するすべてのファイル名を、files変数に格納しています。

4行目、条件に一致するファイルを保存するための空リストfile_listを用意しています。

5行目、拡張子.csvfile_csv変数に代入しています。

6行目、for文を使って、filesリストの中から1つずつファイル名をread_fileに取り出して処理しています。

7行目、if文を使って、read_fileの末尾が.csvで終わるかを判定しています。

8行目、条件がTrueだった場合、対象ファイルをfile_listに追加しています。


実行結果の確認方法

プログラムの最後に以下のコードを追加すると、対象ファイルが正しくリストアップされているか確認できます。

print(file_list)

また、5行目の.csvを変更することで、
.xlsx(Excelファイル)や.png(画像ファイル)など、
異なる拡張子でのファイル抽出も可能です。


まとめ:特定の拡張子ファイルを簡単に分類する

Pythonのendswith()を使えば、
拡張子によるファイルの自動分類が簡単に実現できます。

大量のファイルの中から必要なファイルだけを効率的に抽出したい場合に、非常に役立つテクニックです。
ぜひ、ご自身の作業に取り入れてみてください。

最後までご覧いただき、誠にありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次