※ ChatGPTを利用し、要約された質問です(原文:Python で、既存のテキストにデータを書き加えたいと思っています。)
Pythonで既存のテキストにデータを書き加える方法
このQ&Aのポイント
Pythonで既存のテキストにデータを書き加える方法について解説します。
データを追加する際に注意する点や、上手く行かない場合の対処法についても紹介します。
また、大容量のテキストファイルの扱いについても考慮し、効率的な方法を提案します。
Python で、既存のテキストにデータを書き加えたいと思っています。
Python で、既存のテキストにデータを書き加えたいと思っています。
こんにちは、
私はプログラミング初心者であります。仕事で必要に迫られたこともあり、知人より簡単だから、とPythonを薦められ、学習を始めています。
質問は、既存のテキストファイルの文頭に、数字と文字を付け加えたいと思っているのですが、上手く行きません。
既存のテキスト(data.txt)はこんな感じで、保存されています。
1111.1111 2222.2222 3333.3333 4444.4444 5555.5555
5555.5555 6666.6666 7777.7777 8888.8888 9999.9999
1010.1010 1110.1111 1210.1212 1310.1313 1414.1414
実際には縦横に永遠とデータが羅列されています。空白部分はタブ区切りになっています。横に7000ほどのデータを読むと、改行されています。これがテキスト方式で保存されています。
このデータ群の先頭に6行文のデータを追加したいと試みています。以下のような感じのデータです。
ncols 1019
nrows 1923
xllcorner -67.2327777773961
yllcorner 44.63742951396
cellsize 0.000277777777779674
NODATA_VALUE -999
open関数で data.txt を開き、write を使ってしまうと、data.txt 内のデータが全て消えてしまうのですが、どのようにすれば上記にある6つのデータを書き加える事ができるのでしょうか?
大本のデータは縦横に 9000x7000 近くのデータがタブで区切られて保存されており、その大きさが 500MB を越えていて、職場のPCではノートパッドで開いてから書き足す事ができません。
どなたかアドバイスを頂ければ幸いであります。
お礼
kmeeさん、ご丁寧なスクリプト付きのご回答をありがとうございます。Pythonの本を読んだだけでは、変数に保存するとか十分に理解することがでなかったのですが、具体的な解答を示して頂き、良い勉強になりました。もちろん、この度の問題も解決することができました。