yugokinoさんがやりたいことは、書き換えではなく挿入のように思います。
ファイルの途中を書き換えることはできますが、そこを書き換えると言うことは、既存の部分を消すことになります。
挿入するのであれば、ファイルを読み込み、同じ名前のファイルを新規に作成して、読み込んだデータの途中までを出力し、挿入したい部分を出力し、残りの部分を出力します。
python
1with open('sample.txt', 'r') as f:
2 data = f.readlines()
3
4print(data)
5insert = ['pear\n', 'grape\n']
6ipoint = 2
7with open('sample.txt', 'w') as f:
8 for i in data[:ipoint]:
9 f.write(i)
10 for i in insert:
11 f.write(i)
12 for i in data[ipoint:]:
13 f.write(i)
14
みたいな感じです。
実行結果は以下です。
shell
1> type sample.txt
2apple
3banana
4orange
5> python insert.py
6['apple\n', 'banana\n', 'orange\n']
7> type sample.txt
8apple
9banana
10pear
11grape
12orange
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/01/13 01:59