is 与 == 的区别;小数据池; 编码与解码

1, is 与 == 的区别

 ==  比较的是两边的值

 is   比较的是两边的地址  id ()

2,小数据池(在终端中)

 数字小数据池的范围 -5 ~ 256
 字符串中如果有特殊字符他们的内存地址就不一样
 字符串中单个*20以内他们的内存地址一样,单个*21以上内存地址不一致

注意: pycharm中, 一个py文件中所有相同的字符串 一般都是使用一样的内存地址

3,编码和解码

  ascii 码:

               不支持  中文

               支持    英文  数字  符号

               8位      一个字节
  gbk码  国标:

               支持  中文,英文,数字,符号

               英文  16位   二个字节

               中文  16位   二个字节

  unicode  万国码

                支持  中文,英文,数字,符号

                英文  32 位  四个字节

                中文  32位   四个字节


    utf-8   长度可变的万国码 最少用8位

                英文   8位    一个字节
                中文   24位   三个字节


Python3中 程序运行阶段 使用的是unicode 显示所有的内容

bytes类型

传输和存储都是使用bytes

在网络传输和数据存储的时候. 换gbk, utf-8(90%)

编码
print(s.encode('utf-8')) # 编码 encode('utf-8') utf-8 是指定要编码成什么样的编码类型
解码:
print(s1.decode('utf-8'))   #

编码和解码:

encode(编码方式) ----unicode变成你需要的编码

decode(编码方式) -----把目标bytes转换成字符串

 注意: 用什么进行编码就要什么进行解码 不然后会懵逼!

  

  

  

    

原文地址:https://www.cnblogs.com/zwq-/p/9410338.html