日本語のあつかい

python が内部で扱う文字コードを unicode という。 unicode を生成するには u を文字列の前につける。
s = u"あああ";
具体的な文字コードに byte 列にするには encode を使う。
sjis = s.encode( "sjis" );
元に戻すには decode() をする。
s = sjis.decode();



unicode

u"abc"
文字列を格納するデータ型。 世界中の文字をひとつのコード値に対応づける。 unicode でない場合は 256 個のコード値を文字体系ごとに割りなおす必要がある。 既存の文字列型とも相互に変換できる。 POINT unicode とはコンピュータ上の具体的な値ではなく 世界中の文字の集合のこと。 各エンコードをすることで、表示可能となる。 デコードは実データをユニコード文字集合の各要素(コード値)に変換すること。
# unicode 文字列を utf-8 でエンコードする u"あ".encode( "utf-8" ); # sjis でかいたバイト文字列を unicode にデコードする。 "あ".decode( "utf-8" );
文字列リテラルの前に u をつけると unicode 文字列を表す
# unicode 型の文字列を生成する u"aaa"



RawString

文字列リテラルの前に r をつけると エスケープシーケンス \ の効力が向こうになる。 POINT 正規表現のあらわすのに便利 "\n" は 改行文字ではなく \ と n の2文字をあらわす
r'\n'