Pythonでテキストファイルの途中に行を挿入する

Python, Programming01 December 2020

Pythonでテキストファイルを扱う時に、 既に色々と内容が書かれたファイルの途中の行に追記する方法のまとめです。

バッチスクリプトとか組む時に使うかも。。

readlines()で読み込んで、要素を追加後にwritelines()で書き込む

基本のファイル操作メソッドのみで対応できます。

readlines()で1行ごとにリスト(配列)として読み込んだ後、そのリストの任意の場所に追加したい行の文字列をinsert(追加)します。 その後、writelines()で元のファイルを書き換えたら完了!

以下、スクリプトの例です。

file_name = './example.txt'

#ファイルをリストで読み込み
with open(file_name)as f:
    data = f.read_lines()

#3行目に挿入
data.insert(3, 'hoge\n')

#元のファイルに書き込み
with open(file_name, mode='w')as f:
    f.write_lines()