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

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

Susan Sarandon
リリース: 2024-12-04 21:48:15
オリジナル
580 人が閲覧しました

How Can I Modify Lines in Files In-Place Using Python?

ファイル内の行をその場で変更する

ファイルを 1 行ずつ解析すると、コンテンツを操作するための貴重な機能が提供されます。ただし、ファイル内の行をたどるときに編集する必要が生じた場合、これが実現可能かどうか疑問に思うかもしれません。

インライン編集

従来、ファイルを変更するのは-place は簡単な作業ではありませんでした。ただし、Python の fileinput モジュールで採用されているアプローチと同様に、バックアップ ファイルを利用したシミュレーション手法を使用すると、解決策を提供できます。

サンプル スクリプト

次のサンプル スクリプトについて考えてみましょう。

#!/usr/bin/env python
import fileinput

for line in fileinput.input(inplace=True, backup='.bak'):
    if some_condition(line):
        print line, # this goes to the current file
ログイン後にコピー

このスクリプトでは、コマンドラインまたは標準入力で提供されたファイルから次のコマンドを使用して読み取ります。ファイル入力.入力。 inplace=True を指定すると、現在のファイルの変更が可能になります。バックアップ パラメータは、拡張子 .bak を持つバックアップ ファイルを作成します。

Operation

スクリプトは各行を反復処理し、各行で指定された条件 (some_condition) を評価します。ライン。条件が満たされると、その行が現在のファイルに出力され、その場で効果的に変更されます。

使用例

たとえば、次のようにスクリプトを実行します。 :

$ python grep_some_condition.py first_file.txt second_file.txt
ログイン後にコピー

は、some_condition() を満たす行のみを含む first_file.txt および Second_file.txt になります。述語。

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

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