Python提供了两种存储和读取ASCII码形式的byte数据的方式:使用bytes对象和使用bytearray对象。
使用bytes对象存储和读取ASCII码形式的byte数据
使用bytes对象来存储和读取ASCII码形式的byte数据非常简单。我们可以通过在字符串前加上b来创建一个bytes对象,如下所示:
s = b'hello world'
这个语句将字符串"hello world"转化为bytes对象,其中每个字符都由一个字节表示。我们也可以使用bytes()函数来创建bytes对象,如下所示:
s = bytes('hello world', 'ascii')
这个语句也将字符串"hello world"转化为bytes对象。第一个参数是字符串,第二个参数是编码方式。在这个例子中,我们使用的是ASCII码,因此第二个参数是'ascii'。
存储和读取bytes对象非常简单。我们可以使用open函数来打开一个文件,然后调用write方法来写入bytes对象,如下所示:
with open('test.bin', 'wb') as f:
f.write(s)
这个语句将bytes对象s写入到文件'test.bin'中。注意,我们使用的是二进制模式打开文件('wb')。这是因为我们要写入的是二进制数据。
我们可以使用open函数来打开一个文件,然后调用read方法来读取bytes对象,如下所示:
with open('test.bin', 'rb') as f:
s = f.read()
print(s)
这个语句将文件'test.bin'中的bytes对象读取到s变量中,并打印s变量的值。
使用bytearray对象存储和读取ASCII码形式的byte数据
bytearray对象类似于bytes对象,但是它是可变的。我们可以使用bytearray()函数来创建bytearray对象,如下所示:
s = bytearray(b'hello world')
这个语句将bytes对象b'hello world'转化为bytearray对象。
存储和读取bytearray对象的方式与bytes对象类似。我们可以使用open函数来打开一个文件,然后调用write方法来写入bytearray对象,如下所示:
with open('test.bin', 'wb') as f:
f.write(s)
这个语句将bytearray对象s写入到文件'test.bin'中。同样地,我们使用的是二进制模式打开文件('wb')。
我们可以使用open函数来打开一个文件,然后调用read方法来读取bytearray对象,如下所示:
with open('test.bin', 'rb') as f:
s = f.read()
b = bytearray(s)
print(b)
这个语句将文件'test.bin'中的bytes对象读取到s变量中,然后将s变量转化为bytearray对象b,并打印b变量的值。
以上是Python存储和读取ASCII码形式的byte数据的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python如何存储和读取ASCII码形式的byte数据 - Python技术站