如何从b'\xe3\x81\x82'获取'\xe3\x81\x82'
最后,我想要u'\u3042',意思是日文字母“あ”,
b'\xe3\x81\x82'.decode('utf-8')使u'\u3042'但是
'\xe3\x81\x82'.decode('utf-8')导致以下错误

AttributeError: 'str' object has no attribute 'decode'

因为b'\xe3\x81\x82'是字节,'\xe3\x81\x82'是str。
我有数据库,数据像'\xe3\x81\x82'

最佳答案

如果有字节伪装为Unicode代码点,请编码为拉丁文-1:

'\xe3\x81\x82'.encode('latin1').decode('utf-8')

Latin-1(ISO-8859-1)将Unicode码位一对一映射到字节:
>>> '\xe3\x81\x82'.encode('latin1').decode('utf-8')
'あ'

10-04 11:57