Python でディレクトリ内のすべてのファイルを開く

Muhammad Maisam Abbas 2023年1月30日
  1. Python で os.listdir() 関数を使用してディレクトリ内のすべてのファイルを開く
  2. Python で glob.glob() 関数を使用してディレクトリ内のすべてのファイルを開く
Python でディレクトリ内のすべてのファイルを開く

Python では、主に 2つの方法を使用して、ディレクトリ内のすべてのファイルを開くことができます。os.listdir() 関数と glob.glob() 関数です。このチュートリアルでは、Python のディレクトリ内のすべてのファイルを開く方法を紹介します。従うことができるプログラム例も含まれています。

Python で os.listdir() 関数を使用してディレクトリ内のすべてのファイルを開く

os モジュール内の listdir() 関数は、指定されたディレクトリ内のすべてのファイルを一覧表示するために使用されます。この関数は、指定されたディレクトリパスを入力パラメータとして受け取り、そのディレクトリ内のすべてのファイルの名前を返します。os.listdir() 関数を使用して特定のディレクトリ内のすべてのファイルを反復処理し、Python の open() 関数でそれらを開くことができます。

次のコード例は、os.listdir() および open() 関数を使用してディレクトリ内のすべてのファイルを開く方法を示しています。

import os

for filename in os.listdir("files"):
    with open(os.path.join("files", filename), "r") as f:
        text = f.read()
        print(text)

出力:

This is the first file.
This is the second file.
This is the last file.

files/ディレクトリ内の 3つのファイルからテキストを読み取り、上記のコードで端末に出力しました。最初に、os.listdir() 関数で for/in ループを使用して、files ディレクトリ内にある各ファイルを反復処理しました。次に、open() 関数を使用して read モードで各ファイルを開き、各ファイル内にテキストを出力しました。

Python で glob.glob() 関数を使用してディレクトリ内のすべてのファイルを開く

glob モジュールは、特定のディレクトリ内のファイルを一覧表示するために使用されます。glob モジュール内の glob() 関数は、指定されたディレクトリ内の指定されたパターンに一致するファイルまたはサブディレクトリのリストを取得するために使用されます。glob.glob() 関数は、パターンを入力パラメーターとして受け取り、指定されたディレクトリ内のファイルとサブディレクトリのリストを返します。

glob.glob() 関数を使用して特定のディレクトリ内のすべてのテキストファイルを反復処理し、Python の open() 関数でそれらを開くことができます。次のコード例は、glob.glob() および open() 関数を使用してディレクトリ内のすべてのファイルを開く方法を示しています。

import glob
import os

for filename in glob.glob("files\*.txt"):
    with open(os.path.join(os.getcwd(), filename), "r") as f:
        text = f.read()
        print(text)

出力:

This is the first file.
This is the second file.
This is the last file.

files/ディレクトリ内の 3つのファイルからテキストを読み取り、上記のコードで端末に出力しました。最初に、for/in ループと glob.glob() 関数を使用して、files ディレクトリ内にある各ファイルを反復処理しました。次に、open() 関数を使用して read モードで各ファイルを開き、各ファイル内にテキストを出力しました。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

関連記事 - Python File

関連記事 - Python Directory