考虑拥有以下代码和一个jsonl文件,
我不使用jsonlines.open() api读取文件有一个特定的原因,所以请将此作为一个事实。
用于jsonlines包的参考:https://jsonlines.readthedocs.io/en/latest/#jsonlines.Reader
import jsonlines
with open('example.jsonl', 'r') as jsonl_f:
content = jsonl_f.read()
with jsonlines.Reader(content) as reader:
lst = [obj for obj in reader]example.jsonl内容:
{"hello": "world"}
{"covid": "19"}在lst=线路上出现的错误:
lst = [obj for obj in reader]
File "../lib/python3.7/site-packages/jsonlines/jsonlines.py", line 204, in iter
skip_empty=skip_empty)
File "../lib/python3.7/site-packages/jsonlines/jsonlines.py", line 164, in read
six.raise_from(exc, orig_exc)
File "<string>", line 3, in raise_from
jsonlines.jsonlines.InvalidLineError: line contains invalid json: Expecting property name enclosed in double quotes: line 1 column 2 (char 1) (line 1)发布于 2020-11-10 09:37:37
import jsonlines
with jsonlines.open('example.jsonl', 'r') as jsonl_f:
lst = [obj for obj in jsonl_f]jsonl_f是读取器,可以直接使用。它包含json文件中的行。
https://stackoverflow.com/questions/60761229
复制相似问题