在 python2.7 中,我得到了这样的 unicode s = u'\xe5\x86\x80AC5S'
。实际上它是一个包含汉字的车牌,我测试了 '\xe5\x86\x80',它是 UTF-8 二进制文件。
我得到了一个使用s = s.encode('latin-1')
then s == '\xe5\x86\x80AC5S' 的解决方案,该解决方案解释了 U+0000 和 U+00FF 之间的代码点映射到 ISO 8859-1 或拉丁 1 编码中的相同字节值。
但是现在,我混淆了 unicode 存储模式。当我写为 = u'somedata' 时,ide 得到 defaultencoing(),我的 ide 是 utf-8,我认为 s 转换为 utf-8 的 unicode,我的意思是 s 以十六进制而不是 U+0000 方式存储。我哪里理解错了?请帮忙!!