Python3的bytes与str
又是一个简单的问题,又折腾了很多时间...
有一个文件,里面有形如 \x01\x80\x02\xc0\x02\x00 的内容
我知道它是一个 bytes类型,但读进来的时候是一个字符串(没有用rb去读,因为前期要做一些字符串处理以获得这一部分内容)。
问题是,无论是用encode还是bytes(str,'utf-8')去转,它都会变成类似 \\x01\\x80\\x02\\xc0\\x02\\x00 的内容。
求处理方法
[解决办法]
>>> c = '\xe4\xbd\xa0\xe5\xa5\xbd\xe5\x95\x8a'
>>> print c.decode('utf8')
你好啊
[解决办法]
Python 3.2.3 (default, Apr 11 2012, 07:15:24) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> str = '\x01\x80\x02\xc0\x02\x00';
>>> str.encode('utf-8')
b'\x01\xc2\x80\x02\xc3\x80\x02\x00'
>>>