JSONDecodeError: Expecting property name enclosed in double quotes

JSONDecodeError: Expecting property name enclosed in double quotes

import json as js
CONFIG_FILE_NAME = "Config.json"
FILE = open(CONFIG_FILE_NAME,'r')
CONFIG_FILE = [js.loads(CONTENT) for CONTENT in FILE]

这是我的脚本,我想从这个 Config.json 文件中提取数据

 {
 "Files": {
 "Emails": {
 "FileName": "Emails.txt",
 "Location": "PasteHereLocation"
 },
 "Body": {
 "FileName": "Message.txt",
 "Location": "PasteHereLocation"
 },
 "Servers": {
 "FileName": "Servers.json",
 "Location": "PasteHereLocation"
 }
 }
}

但是它给出了这个错误。因为我已经尝试过不同的东西,比如 1) json 作为原始字符串,将 r' json content' 2) 更改解码方法或 3)将 .json 更改为 .txt。但还是一样的错误。

File "D:\Softwares\Technical\Anaconda\lib\json\decoder.py", line 353, in raw_decode
obj, end = self.scan_once(s, idx)

JSONDecodeError: Expecting property name enclosed in double quotes

请查看此内容

import json as js
CONFIG_FILE_NAME = "Config.json"
FILE = open(CONFIG_FILE_NAME,'r')
js.load(FILE)  # or use js.loads(FILE.read())

省略行

CONFIG_FILE = [js.loads(CONTENT) for CONTENT in FILE]

这是正在发生的事情:
您的文件包含有效的 JSON 但是当您逐行阅读文件时 使用 [[js.loads(CONTENT) for CONTENT in FILE]] 然后变量 CONTENT 不再有效 JSON,它们只是不完整或无效的 JSON 行,然后您尝试将其加载到 json 模块所以这就是它给你的错误。