ホームページ >バックエンド開発 >Python チュートリアル >Pythonを使用して複数のファイルに変更を加える方法

Pythonを使用して複数のファイルに変更を加える方法

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌オリジナル
2025-03-07 11:50:09198ブラウズ

How to Make Changes to Multiple Files Using Python

複数のテキストファイルを同時に変更する必要がありますか?たとえば、すべての文書の英国の綴りをアメリカの綴りに変更します。この記事では、Pythonを使用してこのタスクを効率的に完了する方法を示します。

5つのテキストファイルがあり、そのすべてが「world」を「 wolrd」と見なしているとします。 Pythonスクリプトを使用して、これらすべてのファイルの単語のスペルを修正します。

データの準備

最初に、処理するデータを準備します(テキストファイル)。このチュートリアルでは、複数のファイルとサブディレクトリを含む「hello」と呼ばれるディレクトリと、1.txt 2.txt 3.txt4.txt 、および5.txt という名前のテキストファイルを作成します。

使用する関数はディレクトリ内のすべてのファイルを繰り返しますが、コードに条件付きステートメントを追加して、変更する必要があるファイルのみを処理できます。

コード実装

次に、「hello」ディレクトリの内容をお読みください。 for-inループを使用して、is_file()メソッドとstartswith()メソッドを組み合わせて、ターゲットファイルのみを読み書きすることができます。

ファイルを開き、ファイルの内容を読み取り、必要な変更を行った後にファイルに書き込みます。 r

if not item.name.startswith('.') and item.is_file():
    with open(item, mode="r+") as file:
        file_text = file.read()
重要なステップは、正規表現を使用して「

wolrd」を検索することです。 Pythonでは、を使用して正規表現をコンパイルします re.compile()

正規表現パターンを正規表現オブジェクトにコンパイルし、その
メソッドを使用して一致させることができます。

search()

次に、
メソッドを使用して、間違ったスペルを正しいスペルに置き換えます。

sub()最後に、置き換えられた新しいテキストをファイルに書き込みます:

regex = re.compile('Wolrd')
file_text = regex.sub('World', file_text)

フルコード

file.seek(0)
file.write(file_text)
完全なPythonスクリプトは次のとおりです。これは、各ファイルで「

wolrd

」を探して、「

world ":に置き換えます。 ご覧のとおり、Pythonは

ループを使用して複数のファイルを簡単に変更します。 パターンマッチングに正規表現を使用することを覚えておくことが重要です。
import os, re

with os.scandir('hello') as directory:
    for item in directory:
        if not item.name.startswith('.') and item.is_file():
            with open(item, mode="r+") as file:
                file_text = file.read()
                regex = re.compile('Wolrd')
                file_text = regex.sub('World', file_text)
                file.seek(0)
                file.write(file_text)

Pythonループの詳細については、Pythonループの詳細な説明を参照してください。正規表現の詳細については、Pythonの正規表現チュートリアルを参照してください。 for

この記事は更新されており、Monty Shokeenの貢献が含まれています。 Montyは、チュートリアルを作成し、新しいJavaScriptライブラリを学習するのが大好きなフルスタック開発者です。

以上がPythonを使用して複数のファイルに変更を加える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。