我有一个包含数百万条小记录作为dict的列表。与其将整个事情作为JSON序列化到一个文件中,不如将每个记录写入一个单独的文件中。稍后,我需要从文件中反序列化的JSON重构列表。
我的目标并不是真正地将I / O最小化,而只是将单个集合元素序列化以同时或异步分离文件的一般策略。在Python 3.x或类似的高级语言中,最有效的方法是什么?
答案 0 :(得分:0)
对于那些正在寻找支持异步/等待的基于Python的现代解决方案的人来说,我发现了这个精巧的软件包,它确实可以满足我的需求:https://pypi.org/project/aiofiles/。具体来说,我可以做
import aiofiles, json
"""" A generator that reads and parses JSON from a list of files asynchronously."""
async json_reader(files: Iterable):
async for file in files:
async with aiofiles.open(file) as f:
data = await f.readlines()
yield json.loads(data)