day06 id is 小数据池 字符编码

  • is == id 小数据池
    • id 查询内存地址
      • name = 'alex'
      • print(id(name))
    • is 比较数据内存地址是否相同,不能在pycharm中验证
    • 小数据池 int str 在一定范围内如果两个数值相同为了节省内存共用一个内存
    • int -5~256
    • str 有小数据池的概念
    • 1、有非字母的元素就不是
    • 2、字符串单个字母*int 小于(21)
      • 纯字母字符串是没有限制的
    • 剩下的类型都不存在
  • 编码二
    • ascii 一个字符=1字节=8位 数字字母特殊字符
    • unicode 一个字符4个字节=32位
    • utf-8:
      • a: 0000 0000
      • 欧洲:0000 0000 0000 0000
      • 中文:0000 0000 0000 0000 0000 0000
    • gbk:
      • a:0000 0000
      • 中:0000 0000 0000 0000
    • 1、不同的密码本之间的二进制是不能互相识别的,容易报错或者产生乱码
    • 2、计算机文件存储和传输都是010101 (gbk utf-8 ascii gb2312)不能是unicode 因为一个字符4个字节 浪费资源
    • python3版本的编码
    • 数据类型
    • int
    • str
    • list
    • tuple
    • dict
    • bytes str拥有的所有额方法 bytes 都有
    • str python3x 内存编码方式是unicode 不能进行存储传输
    • name = 'alex'
    • name1 = b'alex'
    • print(name, type(name))
    • print(name1, type(name1))
    • python3x 内存中的编码方式是unicode
      • 英文:
        • str:表现形式 name = 'alex'
          • 内部编码 unicode
      • bytes:表现形式:name1 = b'alex'
        • 内部编码非unicode
    • str 转换成bytes
    • 用什么编码转换,转换回来需要相同的编码转换
posted @ 2018-05-04 20:17  无疑为上  阅读(160)  评论(0编辑  收藏  举报