Python 3.x でファイル パターン マッチングに glob モジュールを使用する方法

WBOY
リリース: 2023-07-30 13:41:58
オリジナル
1592 人が閲覧しました

Python 3 でファイル パターン マッチングに glob モジュールを使用する方法。x

はじめに:
Python ファイル処理では、特定のフォルダー内のファイルをバッチ処理する必要があることがよくあります。フォルダー内のすべてのファイルを操作する必要がある場合は、ファイル パターン マッチングを使用する必要があります。 Python には、このようなニーズに簡単に対応できる glob モジュールが用意されています。この記事では、globモジュールの基本的な使い方と一般的な操作を紹介します。

1. glob モジュールの概要
glob モジュールは Python 標準ライブラリのモジュールで、ファイル システム内の特定のパターンに一致するファイル名を検索し、一致するファイル名を返すために使用されます。リストの形式で。

glob モジュールで最も一般的に使用されるメソッドは glob() 関数です。引数としてパスを受け取り、パターンに一致するファイル名のリストを返すことができます。このパターンにはワイルドカード文字 * と ? を含めることができ、それぞれ複数の文字の一致と 1 つの文字の一致を表します。

2. 基本的な使い方
以下では、いくつかの例を通して glob モジュールの基本的な使い方を紹介します。

(1) 現在のフォルダー内のすべての Python ファイルを検索します。

import glob

python_files = glob.glob("*.py")
print (python_files )

実行結果は次のようになります:

['example.py', 'main.py', 'utils.py']

(2) 指定されたフォルダー内のすべてのファイル:

import glob

all_files = glob.glob("/path/to/folder/*")
print(all_files)

実行結果は次のようになります:

['file1.txt', 'folder1', 'file2.txt']

3. ワイルドカードの使用
ワイルドカードは、状況に応じて柔軟に調整できます。実態に合わせた操作を行います。ここでは、一般的な状況と使用方法をいくつか紹介します。

(1) 任意の数の文字に一致します:
import glob

files = glob.glob("/path/to/folder/test")#この例の ##print(files)

test は、テスト文字を含むファイル名を照合することを意味します。

(2) 単一の文字と一致します:

import glob

files = glob.glob("/path/to/folder/?test.txt")

print(この例の files )

?test.txt は、test.txt で終わり、ファイル名の前に 1 文字があるファイルと一致することを意味します。

4. 再帰検索

glob モジュールは、サブフォルダーを再帰的に検索する機能も提供します。 recursive パラメータを True に設定すると、再帰的検索が可能になります。

import glob

all_files = glob.glob("/path/to/folder/

*/.py", recursive=True)print(all_files )

実行結果は次のようになります:

['file1.py', 'subfolder/file2.py', 'folder/file3.py']

5。概要

この記事では、Python 3.x でファイル パターン マッチングに glob モジュールを使用する基本的な使用法を紹介します。 glob.glob() 関数を使用すると、特定のパターンに基づいて一致するファイル名を検索し、それらをリストの形式で返すことができます。同時に、ワイルドカード文字 * と ? を使用すると、ファイル名をより正確に照合することができます。再帰的検索は、サブフォルダー内のファイル照合操作を実行するのに役立ちます。

この記事の内容が、読者の glob モジュールの理解と使用を促進し、ファイル処理の効率と精度を向上させるのに役立つことを願っています。同時に、読者はこのモジュールの他の機能や使用法を探索することもできます。

以上がPython 3.x でファイル パターン マッチングに glob モジュールを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート