0

Unicode オブジェクトではなく、リスト = [0x97, 0x52] を取得しました。これは文字「青」(u'\u9752')のユニコードです。このリストを最初に unicode オブジェクトに変更してから、「UTF-8」にエンコードするにはどうすればよいですか?

4

2 に答える 2

2
bytes = [0x97, 0x52]

code = bytes[0] * 256 + bytes[1]  # build the 16-bit code
char = unichr(code)               # convert code to unicode
utf8 = char.encode('utf-8')       # encode unicode as utf-8
print utf8                        # prints '青'
于 2013-10-30T15:24:31.923 に答える
0

これが最もエレガントな方法かどうかはわかりませんが、この特定の例では機能します。

>>> ''.join([chr(x) for x in [0x97, 0x52]]).decode('utf-16be')
u'\u9752'
于 2013-10-30T15:28:20.523 に答える