Pythonで固定長データをさわる話

Pythonで固定長を触る機会があったので、メモ。

固定長データを触る方法としては、
- Pandasのread_fwfで読む
- structを使う
というのがあるようですが、stuctはよくわからなかったので試してません。Pandasのread_fwfを試しました。仕様通りのバイト数で区切るとめちゃくちゃになります。どうも日本語の全角を一文字として数えている気がしました。

固定長データは時間がなかったり、ファイル数が少なかったりする時は、Excelで固定長データを区切ってcsvにして読み込むのが簡単で確度が高いそう。目視でのチェックにもなるし。

とはいえpython上で処理を完結させたいので、unicodedataという標準ライブラリを使いました。 アジアの文字なら、空白1文字を追加して文字数をそろえる。という力技。

Example:
ab → [a,b]
ちすい →[ち,'',す,'',い,'']

このリストをsplit()して、空白を削除して使いました。なんとか使えてる。

この記事が気に入ったらサポートをしてみませんか?