day_06(is == id ,编码)

一、 id 查询内存地址。
# name = 'alex'
# print(id(name))
# name1 = 'alex'
# name2 = 'alex'
# print(name1 == name2)
# = 赋值运算         == 比较数值相同
# is 内存地址是否相同
#小数据池。int str 在一定范围内,如果两个数值相同,为了节省内存,共用一个内存地址。
# int -5 ~ 256
# str :1,除了字母、数字和下划线,其他元素都不会被添加到小数据池。
# 2, 单个字母* int(20以内)存在小数据池。
二、编码

    1,不同的密码本之间的二进制是不能互相识别的,容易报错或者产生乱码。
    2,计算机的文件存储和传输都是0101010(gbk,utf-8,ascii,gb2312等)不能是unicode。

    3, 内存中, 我们程序运行的过程中.,编码是unicode

    4,str 拥有的所有方法,bytes都有

    5,转换的时候. GBK不能和UTF-8互相转换.

python3x 内存中的编码方式是unicode
在程序中.字符串可以编码成bytes类型的数据
英文: str: 表现形式 name
= "alex" 内部编码:unicod bytes:表现形式:name1 = b"alex" 内部编码:非unicode 中文: str: 表现形式 name = "中国" 内部编码:unicode bytes:表现形式:b'\xe4\xb8\xad\xe5\x9b\xbd' 内部编码:非unicode
s1 = '中国'
b1 = s1.encode('utf-8')      # encode 编码         b'\xe4\xb8\xad\xe5\x9b\xbd'                   
print(b1)
s2 = b1.decode('utf-8')      # decode 解码         中国
print(s2)

猜你喜欢

转载自www.cnblogs.com/molieren/p/9160491.html