ホームページ >バックエンド開発 >Python チュートリアル >Python を使用してファイル行をその場で編集するにはどうすればよいですか?

Python を使用してファイル行をその場で編集するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-03 16:38:12441ブラウズ

How Can I Edit File Lines In-Place Using Python?

ファイル行をその場で編集する

次を使用してファイルを 1 行ずつ解析するときに、行をその場で直接編集することはできません。標準的な Python 関数。ただし、バックアップ ファイルを使用してインプレース編集をシミュレートすることは可能です。

fileinput モジュール

fileinput モジュールは、インプレース編集をシミュレートする方法を提供します。

  • バックアップ パラメータで指定された拡張子を持つバックアップ ファイルを作成します (デフォルト: '.bak')。
  • 元のファイルの代わりにバックアップ ファイルから読み取ります。 .
  • inplace パラメータが次のように設定されている場合の元のファイルへの書き込みTrue。

インプレース行編集の例

コマンド ラインで指定されたファイルから some_condition 述語を満たさない行を削除するスクリプトの例を示します。またはstdin:

#!/usr/bin/env python
# grep_some_condition.py
import fileinput

for line in fileinput.input(inplace=True, backup='.bak'):
    if some_condition(line):
        print line, # this goes to the current file

使用法:

$ python grep_some_condition.py first_file.txt second_file.txt

このスクリプトを実行すると、first_file.txt と Second_file.txt には some_condition() を満たす行のみが含まれます。述語。

以上がPython を使用してファイル行をその場で編集するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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