python3字符编码如何使用-创新互联

小编给大家分享一下python3字符编码如何使用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名申请、网络空间、营销软件、网站建设、鄂伦春网站维护、网站推广。

编码介绍

在人类社会,不同国家有不同的标准语法,简体汉语、繁体汉语、美式英语、英式英语等.....

但是机器保存数据是以一种特殊的方式来保存,读取的时候也是以同样的方式来解读。

在Python3当中,默认处理中文的方式叫UTF-8。【对比出伤害:UTF-8支持中文,Python2默认格式是ASCII,不支持中文】

同样的一个中文词语,例如:"中国",经过UFT-8方法转存到硬盘中,比如保存成了"110",再通过UFT-8方法读取,也是显示"中国";通过另一种方法转存到硬盘中,"中国"则会保存成"101",然后通过UTF-8读取,肯定不会显示成"中国",也许就是一个乱七八糟的乱码"烫烫烫烫烫烫烫烫烫";

虽然上面的110、119、烫烫烫是乱填的,下面示例代码中有具体值,总之一个:想要显示正常,读取数据时格式,必须和保存数据时使用的一致。

闲扯几句——Python2 字符串设计上的一些缺陷:

使用ASCII 码作为默认编码方式,对中文处理很不友好。

 把字符串牵强地分为 unicode 和 str 两种类型,误导开发者

 以上提及的两个问题,Python3都很好的解决了

首先,Python3 把系统默认编码设置为 UTF-8

然后,文本字符和二进制数据区分得更清晰,分别用 str 和 bytes 表示。

代码示例:

import sys, locale
 
s = "小甲"
print(s)
print(type(s))
print(sys.getdefaultencoding())
print(locale.getdefaultlocale())
 
with open("utf1","w",encoding = "utf-8") as f:
    f.write(s)
with open("gbk1","w",encoding = "gbk") as f:
    f.write(s)
with open("jis1","w",encoding = "shift-jis") as f:
f.write(s)

代码很简单,学过Python的人应该都能看懂是啥意思~~

我们看一下运行结果:

小甲
<class 'str'>
utf-8
('en_US', 'UTF-8')

正如大家所想, 就是将“小甲”原样打印出来, 再把“小甲”存到3个文件中。

(shift-jis是日文编码格式)

 这里解释一下打印出来的两个“utf-8”是什么意思:

上面的 utf-8 指:系统默认编码

注: 不要把系统以为是操作系统,这里可以理解成python3的编译器本身

下面的 utf-8 指:本地默认编码

注: 这个才是操作系统的编码。(在Windows运行会变成gbk)

以上是python3字符编码如何使用的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!

文章名称:python3字符编码如何使用-创新互联
网址分享:https://www.cdcxhl.com/article36/csihsg.html

成都网站建设公司_创新互联,为您提供微信公众号网站策划静态网站网站制作建站公司自适应网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站建设网站维护公司