json.decoder.JSONDecodeError:打开json文件时应为值:第1行第1列(字符0)

2024-09-30 16:31:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用flask创建博客页面,我想将输入文件作为我创建的config.json。请帮助我,我得到json解码器错误 我还试图将str转换为utf8,但它显示了错误

with open('config.json', 'r', encoding ='utf-8') as c:
    params = json.load(c)["params"]

json内容:

{
    "params":
    {
        "local_server":"True",
        "local_uri":"mysql://root:@localhost/codingthunder",
        "prod_uri":"mysql://root:@localhost/codingthunder",
        "fb_url":"https://facebook.com/codingthunder",
        "tw_url":"https://twitter.com/codingthunder",
        "gh_url":"https://github.com/codingthunder",
        "blog_name":"Coding Thunder",
        "tag_line":"A Blog liked by Programmers"
    }
}

输出日志:

PS C:\Users\ASHISH\Desktop\Coding\Flask> python -u "c:\Users\ASHISH\Desktop\Coding\Flask\Blog Page\main.py"
Traceback (most recent call last):
  File "c:\Users\ASHISH\Desktop\Coding\Flask\Blog Page\main.py", line 7, in <module>
    params = json.load(c)["params"]
  File "C:\Users\ASHISH\AppData\Local\Programs\Python\Python37\lib\json\__init__.py", line 296, in load
    parse_constant=parse_constant, object_pairs_hook=object_pairs_hook, **kw)
  File "C:\Users\ASHISH\AppData\Local\Programs\Python\Python37\lib\json\__init__.py", line 348, in loads
    return _default_decoder.decode(s)
  File "C:\Users\ASHISH\AppData\Local\Programs\Python\Python37\lib\json\decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Users\ASHISH\AppData\Local\Programs\Python\Python37\lib\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)

Tags: inpyjsonliblocallineparamsusers
1条回答
网友
1楼 · 发布于 2024-09-30 16:31:40

Expecting value: line 1 column 1 (char 0)提示文件开头没有值,因此解析文件中没有内容

这可能意味着

  • 文件是空的
  • 您打开的文件错误或不存在
  • 您使用的是相对路径,而您的工作目录是错误的(例如,您在其中执行程序的目录)

相关问题 更多 >