• 締切済み

pythonの固定長の集計について

python3.0を使ってテキストデータ(固定長)に関する集計方法の質問です。 テキストデータ(data.txt)の中身は以下となっております。 01010500 01020150 01021000 02011000 02010600 02020300 データレイアウトはは以下となっております。 最初の2文字(1~2カラム):売り手の番号 次の2文字(2~4カラム):書い手の番号 次の4文字(5~8):円 集計方法 売り手番号、買い手番号別の金額を集計させたいです。 アウトプット例(表側に売り手、表頭に買い手) ********1********2 1*****500*****1150 2****1600******300 「*」は、OKWaveに投稿するときに、スペースが削除されて、表が崩れてしまうため、便宜的に入れたものです。 アウトプットでは、スペースが入っている助かります。 上記のようなテキストデータ(data.txt)を1.読み込んで、2.集計し、3新しいテキストファイル又は.csvに書き込む、 方法を教えていただけませんでしょうか。 よろしくお願いいたします。

みんなの回答

回答No.1

・頭の4文字をkeyにして辞書を作ります。 ・has_keyで調べて、False(新規)なら後ろ4文字を数値にして辞書に追加、True(既存)なら後ろ4文字を数値にして加算。 これで、売り買い別の集計ができます。 辞書をソートして、 keyの頭2文字が01めのものを2行目に順番に出力。 keyの頭2文字が02めのものを3行目に順番に出力。 ・・・ としていけばいいでしょう。

yhk50
質問者

お礼

cistronezkさんへ 早々の回答ありがとうございます! 早速試してみたいと思います。