0
私はテキストファイル(20行)を読んでいて、テキストの複数の場所で以下のコードを検索して置き換えています。Python 2.7 - テキストを読み込んで同じファイルに置き換えて書き直します
with open(r"c:\TestFolder\test_file_with_State.txt","r+") as fp:
finds = 'MI'
pattern = re.compile(r'[,\s]+' + re.escape(finds) + r'[\s]+')
textdata = fp.read()
line = re.sub(pattern,'MICHIGAN',textdata)
fp.write(line)
同じファイルに書き戻そうとすると、以下のエラーが発生します。
IOError Traceback (most recent call last)
<ipython-input> in <module>()
6 line = re.sub(pattern,'MICHIGAN',textdata)
7 print line
----> 8 fp.write(line)
9
これは私が間違っていることです。
テキストを書き戻す前に、この 'fp.seek(0)'を実行します。 – bernie