day6
# #python2 and python3的区别 ''' # python2 # print'abc' # range() xrange()生成器 # raw-input() # python3 # print('abc') # range() # input() ''' #=为赋值 ==为比较(等于)值是否相等 is比较 内存地址是否相等 id(内容)打印id地址 #小数据池 #小数据池 ''' #数字 字符串 # i1=6 # i2=6 # print(id(i1),id(i2))#id地址相等 # i1=300 # i2=300 # print(id(i1),id(i2))#id地址不相等 #因为数字存在一个小数据池(-5-256),在这个范围内共用一个id,范围之外不共用 #字符串的数据池的规律:不含有特殊字符;'abc'*20以内共用一个,'abc'*21 id地址不一样 #list tuple dict set没有小数据池 ''' #编码 ''' # ascii A:00000010 8位 1个字节 # unicode A:00000000 00000001 00000010 00000100 32位 4个字节 # 中:000000000 00000001 00000010 00000110 32位 4个字节 # utf-8 A:00000000 00000001 16位 2个字节 # 中:000000000 00000001 00000010 24位 3个字节 # gbk A:00000000 8位 1个字节 # 中:000000000 00000001 16位 2个字节 #各个编码之间的二进制不能互相识别,会产生乱码 # str的存储和传输不可是Unicode,只能是gbk,或者utf-8,utf-16,因此必须将文件类型改成bytes类型 #str (py3中) #英文 编码方式:Unicode 表现形式:s='hjk' #中文 编码方式:Unicode 表现形式:s='你好' #bytes类型 #英文 编码方式:gbk,或者utf-8,utf-16,ascii 表现形式:s=b'hik' #中文 编码方式:gbk,或者utf-8,utf-16,ascii # 表现形式:s=b'x\e12\e23\e34\e12\e45\e23'#2个一个字节,这是三个字节,utf-8的编码方式 #转化方式 encode() str>>>>>bytes(unicode>>>>gbk,或者utf-8,utf-16,ascii) #英文 # s1='ajshsak' # s2=s1.encode('utf-8') # s3=s1.encode('gbk') # print(s2,s3) #中文 # s1='中国' # s2=s1.encode('utf-8') # s3=s1.encode('gbk') # print(s2,s3) '''