zoukankan      html  css  js  c++  java
  • 字符编码

    前置知识点:

          程序执行三大核心硬件:cpu,内存,硬盘

          执行一个程序:1.将硬盘数据读到内存

                 2.cpu读取内存的数据执行

                 3.执行程序时生成的数据有限存入内存

          python解释器执行py文件过程:

                1.将py解释器的代码由硬盘读取到内存

                2.将py文件以普通文本文件的格式由硬盘读到内存

                3.python解释器取内存读取py文件的数据

                4.识别python语法,执行相应程序

          ps:任何文本执行器前两步都一样

    字符编码:

          将人类字符存入内存和硬盘需要经历的过程:  字符====》字符编码表====》计算机二进制

      ASCII表:用八位二进制代表一个英文字符:

                          0000 0000

                          1111  1111    最多只能表示255位

               八位二进制 = 8bit = 1bytes = 1/1024 kb = .........................................

      GKB(中国):用2个bytes来代表一个字符,兼容英文字符

                           0000 0000 0000 0000

                           1111  1111  1111  1111   最多可以表示65535位

      shift(日本):

      euc_kr()韩国;

      unicode(万国码):为了兼容所有国家的字符,所有字符都用2个bytes(缺点:1,,占用储存空间   2.增加io次数,程序运行变慢)

      utf -8:在unicode二进制数据存入硬盘时做优化而生成

          utf-8只与unicode关联

          所有英文字符用一个1bytes表示,中文字符用3个bytes表示

      必须掌握:1、(内存)unicode ======》编码(encode)======》(硬盘)utf-8二进制字符

                (硬盘) utf-8 二进制字符======》解码(decode)=====》(内存)unicode二进制字符

                2、保证不乱码的核心:

                      用什么编码存的数据,就用什么编码取

      需要掌握:1、用户无论输入什么字符,存入内存,unicode都可兼容

           2、硬盘中无论什么编码文件,读到内存,都可兼容unicode

      

  • 相关阅读:
    Python使用MySQL数据库的方法以及一个实例
    【转载】关于Python中的yield
    利用KMeans聚类进行航空公司客户价值分析
    Python多线程编程
    搜索与排名思路整理
    两个UIView添加同一个手势只有最后一个有用
    缩放动画效果
    iOS通过UIAlertController弹出底部选择框来调用相机或者相册
    ios webview点击图片看大图效果及相应手势操作
    iOS开发:获取设备IP地址
  • 原文地址:https://www.cnblogs.com/littleb/p/11814268.html
Copyright © 2011-2022 走看看