• 字符编码


    Python2的 默认编码 是ASCII,不能识别中文字符,需要显式指定字符编码;Python3的 默认编码 为Unicode,可以识别中文字符。

    1.字符与字节
    Windows的cmd终端字符编码默认为GBK,因此在cmd输入的中文字符需要用两个字节表示

    2.编码与解码
    编码(encode):将Unicode字符串(中的代码点)转换特定字符编码对应的字节串的过程和规则
    解码(decode):将特定字符编码的字节串转换为对应的Unicode字符串(中的代码点)的过程和规则

        Python3的解释器以"UTF-8"作为默认编码
        UNICODE字符串可以与任意字符编码的字节进行相互转换·
    
    3.总结
        保证不乱码的核心法则就是,字符按照什么标准而编码的,就要按照什么标准解码,此处的标准指的就是字符编码。
    
        在内存中写的所有字符,一视同仁,都是Unicode编码,比如我们打开编辑器,输入一个“你”,我们并不能说“你”就是一个汉字,此时它仅仅只是一个符号,该符号可能很多国家都在使用,根据我们使用的输入法不同这个字的样式可能也不太一样。只有在我们往硬盘保存或者基于网络传输时,才能确定”你“到底是一个汉字,还是一个日本字,这就是Unicode转换成其他编码格式的过程了。简而言之,就是内存中固定使用的就是Uncidoe编码,我们唯一能改变的就是存储到硬盘时使用的编码。
    
        Unicode----->encode(编码)-------->gbk
        Unicode<--------decode(解码)<----------gbk
    
  • 相关阅读:
    伪类与伪元素的区别
    display:-webkit-box,display:flex 伸缩盒模型
    猴子分桃-sdut
    简单枚举类型——植物与颜色-sdut
    数据结构实验之链表七:单链表中重复元素的删除-sdut
    约瑟夫问题-sdut
    数据结构实验之链表四:有序链表的归并-sdut
    数据结构实验之链表五:单链表的拆分-sdut
    Spring的定时任务
    HTTP状态码
  • 原文地址:https://www.cnblogs.com/einsam/p/10932451.html
Copyright © 2020-2023  润新知