永发信息网

Python 输出中文问题,真是整疯了。。。

答案:1  悬赏:80  手机版
解决时间 2021-04-06 14:11
  • 提问者网友:绫月
  • 2021-04-06 03:53
Python 输出中文问题,真是整疯了。。。
最佳答案
  • 五星知识达人网友:躲不过心动
  • 2021-04-06 04:23
选择# -*- coding: utf-8-*-,因为你文件编码是utf-8的。


也可以这样,形式简单一些:
# encoding: utf-8

python中有两种类型的字符串:普通的str和unicode。一般情况下,处理中文数据推荐使用unicode类型,因为这样就不用考虑编码的问题。到了显示或输出时再转换为存储类型(utf-8、GBK)。但unicode本身是不能输出的,它只是一种内部编码。


看以下示例代码:
# unicode转str,utf-8编码
u'哈哈哈哈'.encode('utf-8', 'ignore')
# unicode转str,GBK编码
u'哈哈哈哈'.encode('gbk', 'ignore')
# str转unicode,其中str为utf-8编码
'哈哈哈哈'.decode('utf-8', 'ignore')追问哭了,不知道怎么感谢你!!最后一个小问题,u'哈哈哈哈'.encode('gbk', 'ignore') 打出来没问题,但是 u'哈哈哈哈'.encode('utf-8', 'ignore') 打出来是一些不认识的字,为什么呢? utf-8 不是比gbk更厉害吗?追答utf-8支持的字符比GBK的多。

windows系统?如果utf8格式输出为乱码,证明你的命令行无法显示utf-8格式的编码。我这里正好相反,显示不出GBK格式的编码。因为不能正常显示,所以就不认识了。追问确实是windows系统,我的命令行无法显示utf-8格式的编码,这个要紧吗长远来看,能解决吗?追答如果你代码使用GBK格式,是没有问题的。如果用UTF-8格式,也没什么大问题。就是调试时不方便,什么都看不出来。你可以在网上找找,怎么让Windows的命令行支持utf-8编码,我对windows的不太熟悉。

望采纳。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯