1. ホーム
  2. python

[解決済み] Pythonでファイルの真ん中に行を挿入する?

2023-08-07 22:59:18

質問

このような方法はあるのでしょうか?例えば、次のような名前のリストがあるファイルを持っているとします。

  1. Alfred
  2. ビル
  3. ドナルド

x行目(この場合3)に3番目の名前、"Charlie"を挿入し、自動的に他のすべてを1行下に送るにはどうしたらよいでしょうか。このような質問を他に見たことがありますが、役に立つ回答は得られませんでした。できればメソッドかループのどちらかで、それができるのでしょうか?

どのように解決するのですか?

このような方法があるのですね。

with open("path_to_file", "r") as f:
    contents = f.readlines()

contents.insert(index, value)

with open("path_to_file", "w") as f:
    contents = "".join(contents)
    f.write(contents)

index そして value は、0から始まる行と値を選択します。