ファイルの内容を編集するとき、私は次のアプローチを使用しています。
- ファイルを読み取りモードで開く
- メソッドを使用してファイルの内容を文字列に変換し、
.read()
別の変数に代入します - ファイルを閉じる
- 文字列に何かをする
- 元のファイルを書き込みモードで開く
- 文字列をファイルに書き込む
- ファイルを閉じる
例えば:
fo = open('file.html', r)
fo_as_string = fo.read()
fo.close()
# # #
# do stuff to fo_as_string here
# # #
fo = open('file.html', w)
fo.write(fo_as_string)
fo.close()
私は今、行の先頭にある空白を削除する必要がある状況に陥っており、ファイルオブジェクトを文字列に変換したため、この空白を「行」レベルでターゲットにする方法はないと思います。 lstrip や rstrip などの文字列メソッドを使用します。
したがって、上記の例のように、ファイルの内容を操作用の文字列として保持する柔軟性を維持しながら、必要に応じて特定の行操作のために文字列内の行を対象にする方法について、論理的なアドバイスを求めていると思います。