今天小编给大家分享一下python编码和解码是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
成都创新互联服务项目包括建湖网站建设、建湖网站制作、建湖网页制作以及建湖网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,建湖网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到建湖省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
编码和解码
编码和解码
encode(编码) ---- 拿到明文编码后对应的字节(二进制)
decode(解码) -----将编码后的字节(二进制)解码成对应的明文
#-*-encoding:utf-8 -*- -----表示有中文时采用utf-8编码形式进行编码。
ASCII码 不支持中文
支持 英文、数字、符号
8位 1个字节
gbk国际 支持中文、英文、数字、符号,必须兼容ASCII码
英文 16位 2个字节
中文 16位、 2个字节
Unicode 万国码 必须兼容ASCII码
支持中英文、数字、符号
英文 32位 4个字节
中文 32位 4个字节
utf-8 长度可变的万国码 最少用8位
英文 8位 1个字节
欧洲 16位 2个字节
中文 24位 3个字节
python2版本用的ASCII码
python3 程序运行时,使用的是unicode,显示所有内容。
bytes类型: 传输和存储都使用的是bytes类型
pycharm 存储时默认使用utf-8编码
s = '饿了吗'
s1 = s.encode('gbk') #编码,gbk码,一个汉字2两字节
print(s1) #b'\xb6\xf6\xc1\xcb\xc2\xf0',\xb6算一个字节
s2 = s1.decode('gbk') #解码
print(s2)
print(s.encode('utf-8'))
a = '大佬'
print(a.encode('utf-8')) #b'\xe5\xa4\xa7\xe4\xbd\xac',两个汉字,六个字节,用gbk解码,两个字节一个汉字,则gbk解码应该是三个汉字
print(a.encode('utf-8').decode('gbk')) #澶т浆,utf-8编码,gbk解码
#注意用什么编码就用什么解码
b = '中国'
print(b.encode('gbk')) #编码 -----b'\xd6\xd0\xb9\xfa'
print(b.encode('gbk').decode('gbk')) #先编码再解码----中国
a = '谦虚'
b = '谦虚'
print(id(a),id(b))
ls = [1,3,4,'哈哈']
ls2 = [1,3,4,'哈哈']
print(id(ls),id(ls2)) #列表内存地址不同
print(not ls is ls2) #True
print(id(ls[-1]),id(ls2[-1])) #提取元素,但相同元素内存地址是相同的 47059648 47059648
ls = [1,3,4,'哈哈']
ls2 = [1,3,4,'哈皮']
print(id(ls[-1]),id(ls2[-1]))#47059648 47061664
#以上说明字符串占内存中占据某个位置,第二次只需调用该内存地址下的字符串即可,不再创建。省内存
#当字符串中包含特殊字符时,内存地址不同
a = [1,2,3]
b = a
c = b
print(a == c) #比较值 ,因为只创建一次列表,记住问题:有没有创建新的缓存,答案是没有
print( a is c) #比较内存地址,三个变量都指向一个列表,故内存地址相同
#比较内存地址时,要看创建了几次列表,这样记忆,创建一次列表,内存地址相同,创建多次列表,地址不同,但字符串不适用。
a = [1,3,4]
b = [1,3,4]
c = b
print(a == c) #True
print(a is b) #fasle
print(a is c) #false
s = '你好'
print(s.encode('gbk')) #b'\xc4\xe3\xba\xc3\xc2\xf0'
c = b'\xc4\xe3\xba\xc3\xc2\xf0'
print(c.decode('gbk'))#解码
print(s.encode('utf-8')) #b'\xe4\xbd\xa0\xe5\xa5\xbd\xe5\x90\x97'
print(s.encode('utf-8').decode('gbk')) #浣犲ソ,用什么编码就用什么解码,这种解码无意义
以上就是“python编码和解码是什么”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注创新互联行业资讯频道。
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款