用python写二进制格式的文件
时间: 2024-05-08 18:15:35 浏览: 128
以下是使用Python写二进制格式文件的示例代码:
```python
# 打开二进制文件
with open('example.bin', 'wb') as file:
# 写入一个整数
file.write(b'\x01\x02\x03\x04')
# 写入一个浮点数
file.write(struct.pack('f', 3.14))
# 写入一个字符串
file.write(b'Hello, world!')
# 读取二进制文件
with open('example.bin', 'rb') as file:
# 读取整数
data = file.read(4)
print(int.from_bytes(data, byteorder='big'))
# 读取浮点数
data = file.read(4)
print(struct.unpack('f', data))
# 读取字符串
data = file.read(13)
print(data.decode())
```
在上面的代码中,我们使用了Python的内置`open`函数来打开文件(在这种情况下,文件名是`example.bin`)。我们使用`wb`参数来打开文件以进行写入操作,并使用`rb`参数来打开文件以进行读取操作。我们使用`with`语句来自动关闭文件。
我们使用`write`方法将二进制数据写入文件。在本示例中,我们写入了一个整数,一个浮点数和一个字符串。我们使用`struct.pack`方法将浮点数打包为字节串,这是因为Python不支持直接将浮点数写入二进制文件。我们使用`b`前缀将字符串转换为字节串。
在读取文件时,我们使用`read`方法读取指定数量的字节。我们使用`int.from_bytes`方法将字节串转换为整数,使用`struct.unpack`方法将字节串解包为浮点数,并使用`decode`方法将字节串转换为字符串。
请注意,二进制文件中的数据可能无法阅读,因为它们以不可读的形式存储在文件中。但是,二进制格式的文件通常比文本格式的文件更节省磁盘空间,并且可以更快地读取和写入数据。
阅读全文