ホームページ > バックエンド開発 > Python チュートリアル > Python での反復中にファイル行をその場で変更できますか?

Python での反復中にファイル行をその場で変更できますか?

Patricia Arquette
リリース: 2024-12-04 13:24:11
オリジナル
660 人が閲覧しました

Can I Modify File Lines In-Place While Iterating in Python?

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

ファイルを 1 行ずつ順番に解析し、行をその場で変更することは可能ですか?を繰り返すfile?

答え:

はい、Python 標準ライブラリ内の fileinput モジュールに実装されているように、バックアップ ファイルを使用してこれをシミュレートできます。

コード例:

次のスクリプトを考えてみましょう。 some_condition 関数で指定された特定の条件を満たさない行を、提供されたファイルまたは標準入力から削除します:

#!/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, end="")  # This outputs modified lines 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 サイトの他の関連記事を参照してください。

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