简体   繁体   English

尝试写入 JSON 文件时出现 JSONDecodeError

[英]JSONDecodeError when trying to write to JSON file

I have a json file where each entry has a corresponding list.我有一个 json 文件,其中每个条目都有一个对应的列表。 This is what it looks like:这是它的样子:

{
    "/home/onur/PycharmProjects/file-tagging/data/world_building_budget.txt": [],
    "/home/onur/PycharmProjects/file-tagging/data/data3/world_elements.png": [],
    "/home/onur/PycharmProjects/file-tagging/data/data3/data4/world.bmp": [],
    "/home/onur/PycharmProjects/file-tagging/data/data2/world_files.pdf": [],
    "/home/onur/PycharmProjects/file-tagging/data/world_saving_budget.jpg": [],
    "/home/onur/PycharmProjects/file-tagging/a.txt": [],
    "/home/onur/PycharmProjects/file-tagging/venv/.gitignore": [],
    "/home/onur/PycharmProjects/file-tagging/venv/lib/python3.9/site-packages/_virtualenv.pth": [],
    "/home/onur/PycharmProjects/file-tagging/venv/lib/python3.9/site-packages/six-1.16.0.dist-info/LICENSE": [],
    "/home/onur/PycharmProjects/file-tagging/venv/lib/python3.9/site-packages/six-1.16.0.dist-info/WHEEL": [],
    "/home/onur/PycharmProjects/file-tagging/venv/lib/python3.9/site-packages/six-1.16.0.dist-info/RECORD": [],
    "/home/onur/PycharmProjects/file-tagging/venv/lib/python3.9/site-packages/six-1.16.0.dist-info/INSTALLER": [],
    "/home/onur/PycharmProjects/file-tagging/venv/lib/python3.9/site-packages/six-1.16.0.dist-info/top_level.txt": [],
    "/home/onur/PycharmProjects/file-tagging/venv/lib/python3.9/site-packages/six-1.16.0.dist-info/METADATA": [],
    "/home/onur/PycharmProjects/file-tagging/venv/lib/python3.9/site-packages/pytz/tzfile.py": [],
...
}

I am trying to append data into that list like this:我正在尝试将 append 数据放入该列表中,如下所示:

with open('content-log.json', 'w+') as f:
    json_data = json.load(f)

    for key in json_data:
        if filter in key:
            dict_tag = json_data[key]
            print(key, type(dict_tag))
            print(tag)
            dict_tag.append(tag)

And this is the error:这是错误:

Traceback (most recent call last):
  File "/home/onur/PycharmProjects/file-tagging/main.py", line 59, in <module>
    json_data = json.load(json_file)
  File "/usr/lib/python3.9/json/__init__.py", line 293, in load
    return loads(fp.read(),
  File "/usr/lib/python3.9/json/__init__.py", line 346, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python3.9/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python3.9/json/decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Where am I going wrong?我哪里错了?

Read, manipulate, write:读取、操作、写入:

with open('content-log.json', 'r') as f:
    json_data = json.load(f)

for key in json_data:
    if filter in key:
        json_data[key].append(tag)

with open('content-log.json', 'w') as f:
    json.dump(json_data, f)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 json.decoder.JSONDecodeError:期望值:尝试写入 json 文件时第 1 行第 1 列(字符 0) - json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) when trying to write to json file 尝试提取 json 时出现 JSONDecodeError - JSONDecodeError when trying to extract a json json.decoder.JSONDecodeError:预期值:尝试从 json 文件读取时第 1 行第 1 列(字符 0) - json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) when trying to read from a json file 为什么尝试在 Python 中加载 JSON 文件时出现 JSONDecodeError? - Why am I getting a JSONDecodeError when trying to load a JSON file in Python? “raise JSONDecodeError(”Expecting value“, s, err.value) from None” 我正在尝试读写 json 文件 - “raise JSONDecodeError(”Expecting value“, s, err.value) from None” I'm trying to read and write to a json File 尝试加载json文件时遇到此错误:json.decoder.JSONDecodeError:预期值:第1行第1列(字符0) - I run into this error when trying to load my json file: json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) 解析JSON时出现JSONDecodeError - JSONDecodeError when parsing JSON 尝试编写JSON文件时获取UnicodeEncodeError - getting a UnicodeEncodeError when trying to write a JSON file 在 Python 中加载 json 文件时出现 json.decoder.JSONDecodeError - json.decoder.JSONDecodeError when loading json file in Python json.decoder.JSONDecodeError 从文件读取时 - json.decoder.JSONDecodeError When reading from a file
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM