htmlファイルが1000件以上あります。「開く」を1回だけ使用して読み書きすることはできますか?
私がやりたい:
- は、ファイルを読み込みます。
- 特定の行をトリムします。
- ファイルを上書きします(追加しません)。
次のコードが機能しました。私は「オープン」を2回使用するのは無駄だと思った。もっと簡単に書くことはできますか?
for file_path in glob.glob(os.path.join(dir, '*.html')):
with open(file_path, "r", encoding="utf-8") as reader:
html_ = reader.read()
replaced = html_.replace("<?xml version=\"1.0\" encoding=\"UTF-8\" ?>", "")
with open(file_path, "w", encoding="utf-8") as writer:
writer.write(replaced)
私が試した:
'r+'
:これは追加です。'w+'
:read()
メソッドは、''
を返しました。
効率に関しては、 'FileInput'を使用してその場所を変更する方が良いでしょうか? –
@ JimFasarakis-Hilliard: 'FileInput'は別のファイルを作成し、それを古い場所に移動します。それは必ずしも効率的ではありません。 –
ありがとうございます。そうですか。 read()を呼び出すと、ポインタが進んでいることが分かりました。そして私がwrite()を呼び出すと、ライターはその点から書き始めます。理解しやすい説明をいただきありがとうございます。 truncate()も呼び出します。 –