龙空技术网

一文搞懂 Python 中的字节字符串

信息科技云课堂 214

前言:

如今姐妹们对“pythonbyte”大体比较注意,朋友们都想要剖析一些“pythonbyte”的相关内容。那么小编也在网络上汇集了一些有关“pythonbyte””的相关资讯,希望大家能喜欢,同学们快快来了解一下吧!

字节字符串,又被称为字节串,Python 3 中新增的 bytes 类型。

字符串(str)由多个字符组成,以字符为单位进行操作。字节串(bytes)由多个字节组成,以字节为单位进行操作。bytes 和 str 除操作的数据单元不同之外,它们支持的所有方法都基本相同,bytes 也是不可变序列。

字节

字节(bytes)是计算机存储容量的一种计量单位,最常用的字节包含八位,即它包含八位(bit)的二进制数。位(bit):是计算机内部数据储存的最小单位,使用二进制数表示。习惯上用大写 B 来表示字节,即1B(字节)= 8bit(位)。

在字节串中每个数据单元都是字节,可以用一个十六进制数来表示。

b'\xe4\xbd\xa0\xe5\xa5\xbd\xe4\xb8\x96\xe7\x95\x8c'

Python 中,使用 b 前缀来表示字节串。以上示例中 \xe4 就表示 1 字节,其中 \x 表示十六进制,e4 就是两位的十六进制数。

字符串是 Unicode 字符序列,而字节字符串是原始字节序列。如果要保存传输字符串,就需要把 str 编码为以字节为单位的 bytes,如果想要读取,则需要将 bytes 解码为 str。字节串可以直接保存传输,不需要编码解码。

字符串与字节串创建字符串

在此示例中,我们使用双引号定义一个字符串“Hello World”。

>>> str1 = "Hello World">>> print(str1)Hello World
创建字节串

在此示例中,我们使用 b 前缀定义一个字节串“Hello World”。

>>> byte1 = b"Hello World">>> print(byte1)b'Hello World'
字节串操作
# 创建一个空的bytes>>> byte1 = bytes()>>> byte2 = b''>>> byte3 = b'Hello World'>>> print(byte3)b'Hello World'# 通过索引输出单个字节>>> print(byte3[0])72# 通过索引输出多个字节>>> print(byte3[1:3])b'el'# 使用 bytes() 函数由字符串创建字节串>>> byte4 = bytes('你好世界',encoding='utf-8')>>> print(byte4)b'\xe4\xbd\xa0\xe5\xa5\xbd\xe4\xb8\x96\xe7\x95\x8c'# 调用字符串本身的 encode() 方法将字符串转换成字节串>>> str1 = '你好世界'>>> byte5 = str1.encode('utf-8')>>> print(byte5)b'\xe4\xbd\xa0\xe5\xa5\xbd\xe4\xb8\x96\xe7\x95\x8c'
字节串转为字符串

decode() 方法可以将一个字节串对象转换成字符串。

>>> byte6 = b'\xe4\xbd\xa0\xe5\xa5\xbd\xe4\xb8\x96\xe7\x95\x8c'>>> str2 = byte6.decode('utf-8')>>> print(str2)你好世界

文章创作不易,如果您喜欢这篇文章,请关注、点赞并分享给朋友。如有意见和建议,请在评论中反馈!

标签: #pythonbyte #python字符串字节 #python中字符转换成字节的方法 #python中字符转换成字节的方法有哪些 #python中字符转换成字节的方法有哪些类型