美文网首页
编程语言基础python之编码常识

编程语言基础python之编码常识

作者: 土卡拉 | 来源:发表于2019-03-12 00:45 被阅读0次
        下载小说打开文件出现过乱码吧?
    

    出现乱码的主要就是编码的格式和解码的格式不一致造成的,即写入与写出不一致。
    那什么是编码?
    简单来讲就是按预先规定好的方式,编成的代码。

        计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最初计算机由美国人发明的,最早只有127个字符被编码到计算机里,也就是大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码,比如大写字母A的编码是65,小写字母z的编码是122。随着时代的发展,这个新生儿的影响力越来越广,ASCII已经不能满足全球人民的需要了,于是五花八门的编码方式就如雨后春笋般,涌现出来,放到一个文本里,那就是各种乱码了。于是Unicode就应运而生了,可是Unicode的字符较长,浪费空间,电脑最初,现在也是,最宝贵的就是内存空间,为了解决这个问题,UTF-8也就是万国码,就走上了历史的舞台。
    

    计算机系统通用的字符编码工作方式:

    • 在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。
    • 用记事本编辑的时候,从文件读取的UTF-8字符被转换为Unicode字符到内存里,编辑完成后,保存的时候再把Unicode转换为UTF-8保存到文件。
    • 浏览网页的时候,服务器会把动态生成的Unicode内容转换为UTF-8再传输到浏览器。

    python方法:

    • 单个字符的编码,Python提供了ord()函数获取字符的整数表示,chr()函数把编码转换为对应的字符:
    • .encode() 编码 默认UTF-8
      .decode() 解码操作,默认utf-8 由byte转成字符串对象 b' byte 字节对象,计算机底层会转成字节型传输
    • 格式化输出
      %:'%s/d等'%对应的值
      format:'{} {}等'.format('对应大括号的值','可以通过参数控制对应')
      不带数字编号,即{}
        带数字编号,可调换顺序,即“{1}”、“{2}”
      带关键字,即“{a}”、“{tom}”

    相关文章

      网友评论

          本文标题:编程语言基础python之编码常识

          本文链接:https://www.haomeiwen.com/subject/pqxwpqtx.html