私はpython2からpython3にいくつかのコードを変換しています。私も、私はpython2でpython2のstring.decode()関数
のpython3でやるべきかを決定するのに十分なpython2エンコード/デコード機能を理解していない、私は次のことを行うことができます。
私はちょうどそこに何をしました>>> c = '\xe5\xb8\x90\xe6\x88\xb7'
>>> print c
帐户
>>> c.decode('utf8')
u'\u5e10\u6237'
? 'u'接頭辞はユニコードを意味しないのですか? utf8は '\ xe5 \ xb8 \ x90 \ xe6 \ x88 \ xb7'でなくてはなりません。
*エンコードとデコードは、対応値のテーブル<->文字*を使用することの問題です。*私は好きです*エンコードとデコードは、対応表(1バイト)の文字を使用することの単なるものです<->ユニコード文字* –
@SergeBallestaはいそうです。私はバイト値として '値'を意味しました。 – Frodon
u '\ u5e10 \ u6237'はどのような形式ですか?それは実際にutf8ですか?次に、latin1の '\ xe5 \ xb8 \ x90 \ xe6 \ x88 \ xb7'の形式は?これは混乱しています。なぜなら、これらの中国語文字をpython3のバイトに変換すると、私が想定していた '\ xe5 \ xb8 \ x90 \ xe6 \ x88 \ xb7'というutf8が得られます。 – kingledion