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

    各种编码由来

      ASCII : 不支持中文(一个字母一个字节:a/b/c)

      GBK : 是中国的中文字符,其包含了简体中文和繁体中文的字符

      Unicode : 万国编码(Unicode 包含GBK)

    Unicode(每个字母需要用两个字节:a/b/c)

      存储所有字符串都用连个字节

      Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码

      规定所有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536

      这里还有个问题:使用的字节增加了,那么造成的直接影响就是使用的空间就直接翻倍了

    Utf-8 : 可变长码, 是Unicode 的扩展集

      UTF-8编码:是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类

      ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存…

      存一个a字母用一个字节,存一个中文用三个字节

    python2与python3的几个区别

      Python2默认 编码方式为ASCII, Python3 默认编码方式为UTF-8(是Unicode 的扩展集)

      python2中字符串有str和unicode两种类型, python3 中字符串有str和字节(bytes) 两种类型

      python3中不再支持u中文的语法格式
    python2和python3中编码转换

      在python3中字符串默认是unicode所以不需要decode(),直接encode成想要转换的编码如gb2312

      在python2中默认是ASCII编码,必须先转换成Unicode,Unicode 可以作为各种编码的转换的中转站

  • 相关阅读:
    笨方法学python中执行argv提示ValueError: not enough values to unpack (expected 4, got 1)
    VMware workstation安装
    Redis bigkey分析
    MySQL drop table 影响及过程
    MySQL 大表硬连接删除
    ES elasticsearch 各种查询
    ES elasticsearch 各种聚合
    ES elasticsearch 聚合统计
    ES elasticsearch 实现 count单字段,分组取前多少位,以地理位置中心进行统计
    MySQL行溢出、varchar最多能存多少字符
  • 原文地址:https://www.cnblogs.com/xinzaiyuan/p/12678027.html
Copyright © 2011-2022 走看看