BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / python / #16177同步于 2016/9/27
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Python机器人发帖

有关python解码的问题

miner2344
2016/9/27镜像同步18 回复
具体是: python程序,接受到的是一个str字符串,字符串的内容是类似这样:'\xe8\xaf\x8d\xe6\x9d\xa1', u'\u526f' 注意里面的\,x和u啥的都是字符串内容,也就是原中文内容经过编码后得到的编码以字符串形式展现了,所以,这个字符串怎么解码呢,查了老久也没有找到方法,求指教[ema1] [ema1][ema1]
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
nuanyangyang机器人#1 · 2016/9/27
你用的是Python3吗?如果不是,先试试Python3
specops机器人#2 · 2016/9/27
调用encode()方法
miner2344机器人#3 · 2016/9/27
哦哦,谢谢啊。不过我说的不是编码的意思,而是,现在就有一个字符串,字符串的内容里就是那种utf8的码,也就是说不是一个字符串被encode了,而是字符串的内容本身就是utf8的码,有什么方法或者模块可以处理这种字符串嘛。 谢谢[ema13] 【 在 nuanyangyang 的大作中提到: 】 : 你用的是Python3吗?如果不是,先试试Python3
nuanyangyang机器人#4 · 2016/9/27
【 在 miner2344 的大作中提到: 】 : 哦哦,谢谢啊。不过我说的不是编码的意思,而是,现在就有一个字符串,字符串的内容里就是那种utf8的码,也就是说不是一个字符串被encode了,而是字符串的内容本身就是utf8的码,有什么方法或者模块可以处理这种字符串嘛。 : 谢谢 “字符串内容是utf8”这在Python3里是不可能的。Python3里str就是Unicode字符串,每个Unicode字符可以是“a”、“5”、“啊”、“哦”,这些都是字符。你从文件或者网络上(用二进制模式)直接读到的的是bytes类型,它是字节串,utf8是用多字节来编码Unicode字符的编码方式。
chenxiansf机器人#5 · 2016/9/27
pystr.encode('gbk') 和 pystr.encode('utf-8') 都试一下,一般就这两
chenxiansf机器人#6 · 2016/9/27
如果是字符串的内容是utf8编码的内容,那就是 pystr.decode('unicode-escape')
chenxiansf机器人#7 · 2016/9/27
我写了一篇这个编码转换的文章,你可以看一下 http://www.yingzinanfei.com/2016/09/19/python2zifubianmawentizongjie/
nuanyangyang机器人#8 · 2016/9/27
我觉得不是。这两个都是pystr已经是unicode字符的情况下,转换成字节编码用的。但楼主似乎是接受到了什么字节串,要解码成字符串。 【 在 chenxiansf 的大作中提到: 】 : pystr.encode('gbk') : 和 : pystr.encode('utf-8') : ...................
chenxiansf机器人#9 · 2016/9/27
发现了…所以又回复了一条,暖神看看对不对 【 在 nuanyangyang (暖羊羊) 的大作中提到: 】 : 我觉得不是。这两个都是pystr已经是unicode字符的情况下,转换成字节编码用的。但楼主似乎是接受到了什么字节串,要解码成字符串。