day 006 小数据池和再谈编码

1.小数据池.

  目的:缓存我们的字符串,整数,布尔值.在使用的时候不需要创建过多的对象

  缓存: int str bool

  int 范围:-5~256

  str:

  1.长度小于等于1,直接缓存

  2.长度大于1.字符串中如果只有数字,字母,下划线.就会缓存

  3.乘以1. 同上,乘以大于1的数,仅包含数字,字母下划线.最终长度小于20会缓存

  4.使用sys模块中的intern缓存字符串.手动指定缓存 from sys import intern intern() 指定缓存的内容

  代码块关系:如果在同一个代码块中.默认的整数和字符串还有布尔值都会进行缓存.如果涉及计算.遵从上面的规则,如果跨代码块,按照上面规则执行.

2.is 和 == 的区别

  is 比较的是内存地址

  ==比较的是值

3.decode和encode

  Python3内存中使用的是Unicode

  Unicode => utf-8 encode ('utf-8')

  utf -8 =>Unicode decode('utf-8')

  utf-8 和gbk不能直接转换

  bytes是字符串的另一种表示形式 

  

猜你喜欢

转载自www.cnblogs.com/f-g-f/p/9623438.html
今日推荐