bytes

在 Python 3 以后,字符串和 bytes 类型被彻底区分开来。字符串是以字符为单位处理的,而 bytes 类型是以字节为单位处理的。

bytes 数据类型在所有操作、使用和内置方法上与字符串数据类型基本相同,同样是不可变的序列对象。

bytes 对象只负责以二进制字节序列的形式记录所需的数据,具体表示什么(例如表示哪个字符)取决于相应的编码格式进行解码。在 Python 3 中,bytes 通常用于网络数据传输、二进制图片和文件保存等场景。可以通过调用 bytes() 来创建 bytes 实例,其值形式为 b'xxxxx',其中 'xxxxx' 是一个或多个转义的十六进制字符串序列(每个 x 的形式为 \x12,其中 \x 是小写的十六进制转义字符,12 是两位十六进制数),每个十六进制数代表一个字节(八位二进制数,取值范围为 0-255)。对于同一个字符串,如果使用不同的编码方式生成 bytes 对象,就会得到不同的值。

创建方法:

b = b''         # 创建一个空的bytes
b = bytes()      # 创建一个空的bytes
b = b'hello'    #  直接指定这个hello是bytes类型
b = bytes('string',encoding='编码类型')  #利用内置bytes方法,将字符串转换为指定编码的bytes
b = str.encode('编码类型')   # 利用字符串的encode方法编码成bytes,默认为utf-8类型

bytes.decode('编码类型'):将bytes对象解码成字符串,默认使用utf-8进行解码。

对于bytes,我们只要知道在Python3中某些场合下强制使用,以及它和字符串类型之间的互相转换,其它的基本照抄字符串。

简单的省事模式:

string = b'xxxxxx'.decode() 直接以默认的utf-8编码解码bytes成string

b = string.encode() 直接以默认的utf-8编码string为bytes

标签: python, python下载, Python教程, Python技术, Python学习, Python学习教程, Python语言, Python开发, Python入门教程, Python进阶教程, Python高级教程, Python面试题, Python笔试题, Python编程思想