标签:文字信息 第六天 不一致 bytes 英文 小数 数据 文字 字符串
1. is 和 == 区别
id()函数
小数据池(常量量池): 把我们使?用过的值存储在?小数据池中.供其他的变量量使用.
小数据池给数字和字符串使用, 其他数据类型不存在.
对于数字: -5~256是会被加到?小数据池中的. 每次使用都是同一个对象.
对于字符串:
1. 如果是纯文字信息和下划线. 那么这个对象会被添加到?数据池
2. 如果是带有特殊字符的. 那么不会被添加到小数据池. 每次都是新的
3. 如果是单一字母*n的情况. ‘a‘*20, 在20个单位内是可以的. 超过20个单位就不会添加 到?小数据池中
s = ‘alex‘ print(id(s)) # 4326667072
s = "alex" print(id(s)) # 4326667072
s1 = "@1 2 "
s2 = "@1 2 "
print(id(s1))
print(id(s2))
# 结果一致, 但是在终端中是不一致的. 所以在python中,命令?行行代码和py文件中的代码运行的效果可能是不一样的
总结:
== 判断两边的值
is 判断内存地址
回顾编码:
1. ASCII: 英文, 特殊字符, 数字, 8bit, 1byte
2. GBK: 中文 16bit, 2byte. 兼容ASCII
3. unicode: 万国码, 32bit 4byte. 兼容ASCII
4. UTF-8: 长度可变的unicode. 英文:8bit, 欧洲:16bit, 中文:24bit 3byte
python2 只能用ASCII
python3 有unicode, 默认的编码就是unicode
内存里用的是unicode. 硬盘和网络传输用的是utf-8或者GBK
2. encode() 编码. 获取到的是编码之后的结果. bytes
3. decode() 解码. 把bytes编程我们熟悉的字符串
标签:文字信息 第六天 不一致 bytes 英文 小数 数据 文字 字符串
原文地址:https://www.cnblogs.com/clbao/p/9305210.html