求助:关于 Python 编码的问题

2017-03-05 19:43:33 +08:00
 maiganne
从网页上提取了一段字符出来, x=u'\u7535\u8bdd\u89c6\u9891\u4f1a\u8bae\u64cd\u4f5c\u6d41\u7a0b',已知网页的编码是 gb2312 的方式,现在想看到 x 的中文是什么,怎么处理?
3027 次点击
所在节点    Python
8 条回复
falseen
2017-03-05 19:54:22 +08:00
如果是 python2 的话,直接 print(x)即可。如果是 python3 的话不会存在这个问题。
maiganne
2017-03-05 19:59:35 +08:00
@falseen 谢谢, print x 果然可以显示出来,那怎么让 x 变成正常显示的字符串?
falseen
2017-03-05 20:08:26 +08:00
在 python2 中,字符串就是长这样的,没法改变。它其实就是一个正常的字符串,只是显示的是 utf-8 编码而已,你可以对它进行任何正常的操作。如果你是强迫症患者,一定要让它显示中文的话,那么只有用 python3 了。
wolong
2017-03-05 20:37:41 +08:00
懒得研究 python 2 的编码问题,所以转 3 了。
dant
2017-03-06 11:06:23 +08:00
x 是 Unicode codepoint 序列( Python 2 中的类型是 unicode , Python 3 中的类型是 str )
可以通过 x.encode() 转换为字节序列( Python 2 中的类型是 str , Python 3 中的类型是 bytes )
chez
2017-03-06 11:12:24 +08:00
x.encode('utf-8')
alex0721
2017-03-06 12:03:36 +08:00
x.encode('gbk') 吧....
crazypig14
2017-03-07 10:55:05 +08:00
电话视频会议操作流程 。。。。 utf8 的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/345124

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX