用户指南
导入jsonlines模块以开始使用:
import jsonlines
便捷函数jsonlines.open()采用文件名并返回读取器或写入器,从而使简单的情况极其简单:
with jsonlines.open('input.jsonl') as reader:
for obj in reader:
...
with jsonlines.open('output.jsonl', mode='w') as writer:
writer.write(...)
writer.write_all(raw_datas)
jsonlines
jsonlines是一个Python库,用于简化jsonlines 和ndjson数据的使用。
这种数据格式简单明了:它只是每行一个有效的JSON值,使用UTF-8编码。尽管使用和创建此类数据的代码并不那么复杂,但是当添加数据验证,错误处理,对二进制流和文本流的支持等等时,它很快变得足够重要,以至于需要专用的库。这个小库实现了所有(甚至更多!)功能,因此使用这种格式的应用程序不必重新发明轮子。
功能
方便的open()功能
使简单的案例编写起来很简单
采用文件名和模式
返回一个Reader或 Writer实例
可以用作上下文管理器
灵活 Reader
包装类似文件的对象或任何其他可迭代的屈服线
可以直接通过该read()方法读取行
可以直接或通过iter()方法用作迭代器
可以验证数据类型,包括无检查
可以在迭代过程中跳过无效行
提供体面的错误信息
可以用作上下文管理器
允许使用自定义loads 可调用控件完全控制解码
灵活 Writer
包装类似文件的对象
可以产生紧凑的输出
可以对键进行排序(确定性输出)
每次写入后可以刷新基础流
可以用作上下文管理器
允许使用自定义dumps 可调用控件完全控制编码