Python から MySQL を呼び出す際に " SET NAMES 'utf8'
" で準備しますが、それでも何かが正しくありません。次のようなシーケンスを取得します。
å½å®¶1级è¯ä¹¦
漢字を取得することになっている場合、他の場所では常に utf8 でカバーされます。
utf8 コード/シーケンスを見ると、明らかに実際のものと一致しません。形式は同じですが、数値が異なります。
これは Python 2.7 側での誤ったエンコーディングですか、それとも私の側での不適切なプログラミングですか? Python 3.x がこれらの問題を解決したことは知っていますが、それ以降のバージョンでは必要なモジュールを使用できません。
Python 2.7 は print 演算子を使用して実際に中国語を表示できることは知っていますが、それ以外の場合は utf8 コードとして保存および表示されます。見て:
>>> '你好'
'\xc4\xe3\xba\xc3'
>>> print '\xc4\xe3\xba\xc3'
你好