day06-is和==以及编码解码
is和==区别
== 判断. 左右两端是否相等和一致, 比较的是内容
is 判断. 判断的是内存地址 id()的值来判断 内存地址
id() 可以查看当前的内存地址
如果两个变量所指向的是相同的数字,字符串,布尔类型,则都指向的是同一个内存地址。
如果两个变量的值是相同的列表,元组,字典类型,则这两个变量对应的内存地址不相同。
编码和解码
1. ASCII: 英文, 特殊字符, 数字, 8bit, 1byte
2. GBK: 中文 16bit, 2byte. 兼容ASCII
3. unicode: 万国码, 32bit 4byte. 兼容ASCII
4. UTF-8: 长度可变的unicode. 英文:8bit,
python2 只能用ASCII
python3 有unicode, 默认的编码就是unicode
内存里用的是unicode. 硬盘和网络传输用的是utf-8或者GBK
encode() 编码. 获取到的是编码之后的结果. bytes
decode() 解码. 把bytes编程我们熟悉的字符串
注意:使用什么编码就用什么解码
报错了,意思是必须编码后才能解码,我们这只是显示出来,并没有保存。