python io库的使用,举例
时间: 2024-09-28 20:03:00 浏览: 40
Python的`io`模块提供了一种统一的方式来处理输入输出操作,支持多种文件系统以及内存流等非文件形式的数据。它的主要类包括`BytesIO`, `StringIO` 和 `TextIOWrapper` 等。
例如,下面是一些基本的`io`库使用示例:
1. **读取文件内容**:
```python
import io
# 从磁盘文件读取
with open('example.txt', 'r') as file:
content = file.read() # 内存中读取所有数据
byte_content = file.read(10) # 一次性读取10字节
# 或者使用BytesIO
byte_io = io.BytesIO(b'Hello, world!')
content = byte_io.getvalue() # 将字节流转换为字符串
```
2. **写入文件**:
```python
# 将数据写入文件
data = 'This is some text.\n'
with open('output.txt', 'w') as file:
file.write(data)
# 使用BytesIO写入字节流
byte_io = io.StringIO()
byte_io.write('Some bytes in ASCII format')
byte_io.seek(0) # 重置游标以便写入
file = open('output.bin', 'wb') # 打开二进制模式写入
file.write(byte_io.getvalue())
file.close()
```
3. **文本和二进制流之间的转换**:
```python
from io import StringIO, BytesIO
text_io = StringIO('Hello, Binary World!')
binary_io = BytesIO(text_io.getvalue().encode()) # 将文本转换为字节
# 反向过程
decoded_data = binary_io.getvalue().decode()
print(decoded_data)
```
阅读全文