is ==小数据池编码解码

 ==      比较      比较的是两边的值
    is      比较      比较的是内存地址   判断两个东西指向的是不是同一个对象
              取内存地址   

    id()


小数据池
    数字小数据池范围      -5—256

    优点: 能够提⾼一些字符串, 整数的处理速度. 省略的创建对象的过程.     缺点: 在'池'中创建或者插入新的内容会花费更多的时间.


    字符串中如果有特殊字符他们的内存地址就不一样(单纯比较特殊字符是一样的)——在终端执行
    字符串中单个*20以内他们的内存地址一样,单个乘以21以上内存地址不一样

1. 如果字符串的⻓度是0或者1, 都会默认进行缓存

2. 字符串长度⼤于1, 但是字符串中只包含字⺟, 数字, 下划线时才会缓存

3. 用乘法的到的字符串. ①. 乘数为1, 仅包含数字, 字⺟, 下划线时会被缓存. 如果 包含其他字符, ⽽长度<=1 也会被驻存, ②. 乘数⼤于1 . 仅包含数字, 字⺟, 下划 线这个时候会被缓存. 但字符串长度不能大于20

4. 指定驻留. 我们可以通过sys模块中的intern()函数来指定要驻留的内容.

编码和解码
    asicc码:
        不支持中文
        支持英文,数字,字母,符号
        8位bit——一个字节
    gbk  国标:
        支持  中文,英文,数字,符号
        英文      16位bit——两个字节
        中文      16位bit——两个字节
    Unicode 万国码:
        支持中文,英文,数字,符号
        不支持存储,不支持传输
        英文      32位bit——四个字节
        中文      32位bit——四个字节
    uft-8   长度可变的万国码,最少用8位
        英文      8位bit——一个字节
        欧洲      16位bit——两个字节
        中文      24位bit——三个字节

    python2的版本,默认使用ascii
    python3的版本,默认使用unicode,在计算的时候会非常方便

    bytes类型
        传输和存储都是使用bytes类型
    pycharm存储的时候默认使用utf-8

    编码(encode):unicode变成你需要的编码
        编码之后的内容是字节(bytes类型)

原文地址:https://www.cnblogs.com/lixin012007/p/9675487.html