o6day

 1. is 和 == 的区别
 
        #小数据池
 
            # 数字小数据池的范围  -5 ~ 256
            a=-5 b=-5;在小数据池范围内
            a is b 返回True            
            # 字符串中如果有特殊字符(如@)他们的内存地址就不一样;cmd下执行;特殊字符(加减号@等特殊字符);可以在window终端试试      
            # 字符串中单个*20以内他们的内存地址一样,单个*21以上内存地址不一致;不是乘号号是相等的
    #总结:
 
                # == 比较   比较的俩边的值
 
                # is   比较   比较的是内存地址   id()
 
 
 
  2. 编码和解码
         ascii 码:
               不支持  中文
               支持    英文  数字  符号
               8位      一个字节
         gbk码  国标:
               支持  中文,英文,数字,符号
               英文  16位   二个字节
               中文  16位   二个字节
         unicode  万国码;不支持传输,不支持存储
                支持  中文,英文,数字,符号
                英文  32 位  四个字节
                中文  32位   四个字节
         utf-8   长度可变的万国码 最少用8位
                英文   8位    一个字节
                中文   24位   三个字节
         Python3中 程序运行阶段 使用的是unicode,在计算的时候非常方便   显示所有的内容
         bytes类型
            传输和存储都是使用bytes(二进制)
            
         pycharm 存储的时候默认是使用utf-8
         encode decode 以什么编码就以什么解码
总结:
    is 和 == 区别
        is  比较内存地址
                id()   ---- 获取内存地址
                小数据池:
                    数字的小数据池范围是 -5 ~ 256
                    字符串:
                        字符串中不能包含特殊符号   + - * / @ 等等
                        字符串单个字符*20以内内存地址都是一样的,单个字符*21以上内存地址不一致
        注意: pycharm是个坑, 一个py文件中所有相同的字符串 一般都是使用一样的内存地址
        ==  比较俩边的值
    编码和解码
        encode(编码方式)     ---- 拿到明文编码后对应的字节
        decode(编码方式)     -----将编码后的字节解码成对应的明文
    注意: 用什么进行编码就要什么进行解码  不然后会懵逼!
原文地址:https://www.cnblogs.com/pythonwork/p/11493765.html