朝から文字コード(笑)

今日は実験が午後からなので,午前中はpythonの勉強でもしてみる.

昨日はいろいろ凹んでましたが,今日も朝から多くの人を凹ませ続ける文字コードについて.



pythonは文字列処理とかに使ってます.

研究の実験のデータがplaneTextで出力されるので,結果を自動で取得して整理するとかは

pythonがもってこいです.

その程度の使い方なので今まで恐るべきエラー

UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 0: ordinal

みたいなのが出てきた日には凍り付いたものですが,いい加減どうにかする.


pythonunicodeという別にユニコードでもなんでもない内部表現を持っている.

コイツを理解しないと,上記の謎のエラーを解決するのは難しい.

pythonistaのt-fridgeからこんなサイトを教えてもらった.

かなり分かりやすい説明なのでpython開いていろいろ打ってみると分かると思われます.

要点は

入力された文字列はなるべく早い段階でunicode型に変換し、
その文字列は出力されるぎりぎりまでunicode型で保持するように心がける

ってなところでしょうかね.