Python 的 shelve 模块二进制存储

利用 Python 的 shelve 模块, 可以将程序中需要保存的数据,以二进制放入 shelf 文件中。另一个程序就可以读取 shelf 文件,用于业务逻辑。也就是说 shelve 模块可以实现数据持久化,只不过格式是二进制形式。
写入数据:

import shelve
\'\'\'
使用 shelve 读写变量
\'\'\'
# 写入数据文件
shelf_file = shelve.open(\'book_data\')
books = [\'云游\', \'人生十二法则\', \'一场游戏一次消遣\']
shelf_file[\'books\'] = books
shelf_file.close()

读取数据:

shelf_file = shelve.open(\'book_data\')
print(list(shelf_file.keys()))
print(list(shelf_file.values()))
shelf_file.close()

运行结果:

[\’books\’]
[[\’云游\’, \’人生十二法则\’, \’一场游戏一次消遣\’]]

shelf 类型的值拥有 keys() 和 values() 方法, 它们会分别返回 shelf 中类似列表形式的键或值。因为只是类似,所以应该将它们传递给 list() 函数, 返回真正的列表。
shelve 模块会在执行目录,新建三个持久化文件:

book_data.bak
book_data.dat
book_data.dir
如果希望保存 Python 程序中的数据,使用 shelve 模块就很方便

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

购物车