python--数据类型bytes
在Python3以后,字符串和bytes类型彻底分开了。字符串是以字符为单位进⾏处理的,bytes类型是以字节为单位处理的。
bytes数据类型在所有的操作和使⽤甚⾄内置⽅法上和字符串数据类型基本⼀样,也是不可变的序列对象。
bytes对象只负责以⼆进制字节序列的形式记录所需记录的对象,⾄于该对象到底表⽰什么(⽐如到底是什么字符)则由相应的编码格式解码所决定。Python3中,bytes通常⽤于⽹络数据传输、⼆进制图⽚和⽂件的保存等等。可以通过调⽤bytes()⽣成bytes实例,其值形式为
b'xxxxx',其中 'xxxxx' 为⼀⾄多个转义的⼗六进制字符串(单个 x 的形式为:\x12,其中\x为⼩写的⼗六进制转义字符,12为⼆位⼗六进制数)组成的序列,每个⼗六进制数代表⼀个字节(⼋位⼆进制数,取值范围0-255),对于同⼀个字符串如果采⽤不同的编码⽅式⽣成bytes 对象,就会形成不同的值.
b = b''# 创建⼀个空的bytes
b = byte() # 创建⼀个空的bytes
b = b'hello'# 直接指定这个hello是bytes类型
b = bytes('string',encoding='编码类型') #利⽤内置bytes⽅法,将字符串转换为指定编码的bytes
b = de('编码类型') # 利⽤字符串的encode⽅法编码成bytes,默认为utf-8类型
bytes.decode('编码类型'):将bytes对象解码成字符串,默认使⽤utf-8进⾏解码。
对于bytes,我们只要知道在Python3中某些场合下强制使⽤,以及它和字符串类型之间的互相转换,其它的基本照抄字符串。
默认字符串是什么简单的省事模式:
string = b'xxxxxx'.decode()直接以默认的utf-8编码解码bytes成string
b = de()直接以默认的utf-8编码string为bytes
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论