問題編をまだ見ていない人は文字化けクイズ(問題編)を先にご覧ください。 Q1(初級): 「こんにちは、世界」と表示されるはずなのになぜか「縺薙」などの難しい漢字が表示された。何が起きたか。 A1: UTF-8でエンコードされているバイト列をShift_JISだと思ってデコードするとこうなりますね。よく見かけるのがUTF-8で保存されているウェブページをブラウザで開いたときに自動判定に失敗してしまったケース。UTF-8の有名なサイトとしてはWikipediaなんかがあるので、これを開いてエンコーディングをShift_JISにすることで簡単に体験できます。Firefoxだとメニューから「表示」→「文字エンコーディング」→「日本語(Shift_JIS)」ね。 Pythonでこの文字化けを再現するコードはこちら: >>> print u"こんにちは".encode("utf-8").decode(