最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • python3字符编码是什么?怎么用?

    正文概述    2020-02-27   159

    最近一直讲的是python基础方面的知识,小编一直在考虑要不要加大难度。这个问题犹豫了很久,怕一些python小白不能很好的接受知识点。但是最近小编收到不少小伙伴的强烈要求,想要学习编码这个模块的知识。小编对大家向来是有求必应,马上就给大家安排上了python字符编码相关的知识,接下来一起看看能不能学会吧。


    编码介绍

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

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

    在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字符编码是什么?怎么用?

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元