使用 json5 读取 .json 文件时出现 ValueError 异常“п”

ValueError exception "п" while reading .json file with json5

目前,我正在尝试在 PyCharm 中制作最简单的 JSON5 reader,它从某些 windows 路径读取文件。

我遇到的是一个对我来说完全未知的错误,在我第 5 次或第 6 次尝试读取 JSON5 之后似乎突然出现了。

阅读 .json 一切顺利,直到发生某些事情(我不确定到底是什么)并且它突然无处不在地发现一个“п”(Ctrl + F 没有给出任何结果)并开始每次都抛出异常。

我搜索了很多网站,但没有发现任何有用的信息,也没有发现任何其他遇到过该问题的人。

C:\Users\User\jsonTest\venv\Scripts\python.exe "C:/Users/User/jsonTest/test.py"
Traceback (most recent call last):
  File "C:\Users\User\jsonTest\test.py", line 3, in <module>
    jsonData = json5.load(resultsFile)
  File "C:\Users\User\jsonTest\venv\lib\site-packages\json5\lib.py", line 46, in load
    return loads(s, encoding=encoding, cls=cls, object_hook=object_hook,
  File "C:\Users\User\jsonTest\venv\lib\site-packages\json5\lib.py", line 82, in loads
    raise ValueError(err)
ValueError: <string>:1 Unexpected "п" at column 1

Process finished with exit code 1

我正在执行的代码:

import json5
with open("level.json", "r+") as resultsFile:
    jsonData = json5.load(resultsFile)

来自level.json的数据:

{"random": 5, "data": 1}

这是 Unicode byte-order 标记的开始。您应该将 encoding='utf-8-sig' 添加到 open 调用中,让它查找 BOM。