- Python数据持久化教程
- Python 数据持久化 - 主页
- Python 数据持久化 - 简介
- Python 数据持久化 - 文件 API
- 使用 os 模块进行文件处理
- Python数据持久化——对象序列化
- Python 数据持久化 - Pickle 模块
- Python 数据持久化 - Marshal 模块
- Python数据持久化——Shelve模块
- Python数据持久化——dbm包
- Python 数据持久化 - CSV 模块
- Python 数据持久化 - JSON 模块
- Python 数据持久性 - XML 解析器
- Python 数据持久化 - Plistlib 模块
- Python数据持久化-Sqlite3模块
- Python 数据持久化 - SQLAlchemy
- Python 数据持久化 - PyMongo 模块
- Python 数据持久化 - Cassandra 驱动程序
- 数据持久化-ZODB
- 数据持久化 - Openpyxl 模块
- Python 数据持久性资源
- Python 数据持久化 - 快速指南
- Python 数据持久性 - 有用资源
- Python 数据持久化 - 讨论
Python数据持久化——对象序列化
Python 的内置 open() 函数返回的内置文件对象有一个重要的缺点。当以“w”模式打开时,write() 方法仅接受字符串对象。
这意味着,如果您有以任何非字符串形式表示的数据、内置类(数字、字典、列表或元组)或其他用户定义类的对象,则无法将其直接写入文件。在编写之前,您需要将其转换为字符串表示形式。
numbers=[10,20,30,40] file=open('numbers.txt','w') file.write(str(numbers)) file.close()
对于二进制文件,write()方法的参数必须是字节对象。例如,整数列表通过bytearray()函数转换为字节,然后写入文件。
numbers=[10,20,30,40] data=bytearray(numbers) file.write(data) file.close()
要以相应的数据类型从文件中读回数据,需要进行反向转换。
file=open('numbers.txt','rb') data=file.read() print (list(data))
这种将对象手动转换为字符串或字节格式(反之亦然)的方法非常麻烦且乏味。可以将 Python 对象的状态以字节流的形式直接存储到文件或内存流中并检索到其原始状态。这个过程称为序列化和反序列化。
Python 的内置库包含用于序列化和反序列化过程的各种模块。
先生。 | 名称和描述 |
---|---|
1 |
泡菜 Python 特定的序列化库 |
2 |
元帅 内部用于序列化的库 |
3 |
搁置 Pythonic 对象持久化 |
4 |
数据库管理 提供 Unix 数据库接口的库 |
5 |
数据集 用于将 Python 数据存储和检索为 CSV 格式的库 |
6 |
json 用于序列化为通用 JSON 格式的库 |