Python中的中文编码

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (500)

当我在Python(Pandas)中输出一些中文字符时,它显示如下

\xe8\xbf\x99\xe7\xa7\x8d\xe6\x83\x85\xe5\x86\xb5\xe6\x98\xaf\xe6\xb2\xb9\xe6\xb3\xb5\xe6\x95\x85\xe9\x9a\x9c\xe7\x81\xaf\xef\xbc\x8c\xe6\xa3\x80\xe6\x9f\xa5\xe4\xb8\x80\xe4\xb8\x8b\xe6\xb2\xb9\xe6\xb3\xb5\xe6\x8f\x92\xe5\xa4\xb4\xe6\x98\xaf\xe5\x90\xa6\xe6\x8e\xa5\xe8\x99\x9a\xef\xbc\x8c\xe7\x84\xb6\xe5\x90\x8e\xe6\x9f\xa5\xe4\xb8\x80\xe4\xb8\x8b\xe6\xb2\xb9\xe6\xb3\xb5\xe5\x86\x85\xe7\xae\xa1\xe9\x81\x93\xe5\x8e\x8b\xe5\x8a\x9b\xe6\x98\xaf\xe5\x90\xa6\xe7\xac\xa6\xe5\x90\x88\xe6\xad\xa3\xe5\xb8\xb8\xe5\x80\xbc\xe3\x80\x82

什么是编码格式?据我所知,这不是unicode。谢谢!

提问于
用户回答回答于

raw_bytes = b'\xe8\xbf\x99\xe7\xa7\x8d\xe6\x83\x85 . . .'

raw_bytes一个<class 'bytes'>包含您的十六进制字符的对象,你可以再调用decoderaw_bytes,并获得了<class 'str'>你的人物的代表。

string_text = raw_bytes.decode("utf-8")

用户回答回答于

这是bytes类型,包含有效的utf-8中文文本(据我所知,谷歌翻译)。

如果它是代码中的字符串文字,则添加# -*- coding: utf-8 -*-为Python文件的第一行。

如果它是外部数据,这里是如何将其转换为文本str类型):bytes_text.decode("utf-8")

扫码关注云+社区

领取腾讯云代金券