温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

解决python中输出结果乱码的方法

发布时间:2020-07-03 11:29:37 来源:亿速云 阅读:1049 作者:清晨 栏目:编程语言

小编给大家分享一下解决python中输出结果乱码的方法,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨方法吧!

python输出中文乱码的解决方法:

1、在源码文件第一行添加 #-*-coding:utf-8-*- 或  #encoding=utf-8 或  #encoding=UTF-8

注意:一定要在第一行!

在python2中第一行不加#-*-coding:utf-8-*-会输出下面的错误:

File "ex1.py", line 16

SyntaxError: Non-ASCII character '\xe8' in file ex1.py on line 16, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

2、在字符串前加 ‘ u ’ 

3、若上述2种方式仍然不能保证能输出正常输出中文,就需要做编码解码设置

encode: 编码(真实字符与二进制串的对应关系,真实字符→二进制串)

decode: 解码(二进制串与真实字符的对应关系,二进制串→真实字符)

下面介绍几种常用的编码方式:

UTF-8:Unicode Transformation Format-8bit,允许含BOM,但通常不含BOM。是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24位(三个字节)来编码。

UTF-8包含全世界所有国家需要用到的字符,是国际编码,通用性强。UTF-8编码的文字可以在各国支持UTF8字符集的浏览器上显示。如,如果是UTF8编码,则在外国人的英文IE上也能显示中文,他们无需下载IE的中文语言支持包。

GBK是国家标准GB2312基础上扩容后兼容GB2312的标准。GBK的文字编码是用双字节来表示的,即不论中、英文字符均使用双字节来表示,为了区分中文,将其最高位都设定成1。GBK包含全部中文字符,是国家编码,通用性比UTF8差,不过UTF8占用的数据库比GBK大。

GBK、GB2312等与UTF8之间都必须通过Unicode编码才能相互转换:

GBK、GB2312<===>Unicode<===>UTF8。这一点非常关键,就是两种不同的编码方式之间的互相转换,要通过Unicode编码作为桥梁。

看完了这篇文章,相信你对解决python中输出结果乱码的方法有了一定的了解,想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI