Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将json文件加载到python时解码错误_Python_Json - Fatal编程技术网

将json文件加载到python时解码错误

将json文件加载到python时解码错误,python,json,Python,Json,这是我的json文件: { "43455": ["(\(.*\))"], "55655": ["(\d{2,3})\"] } 当我尝试将其加载到python脚本时,出现了一个错误: with open('link_to_file', 'r', encoding='utf-8-sig') as file: field_regex = json.loads(file.read()) JSONDecodeError:无效\escape 尝试更改编码,但仍然没有成功。。。有

这是我的json文件:

{
    "43455": ["(\(.*\))"],
    "55655": ["(\d{2,3})\"]
}

当我尝试将其加载到python脚本时,出现了一个错误:

with open('link_to_file', 'r', encoding='utf-8-sig') as file:
    field_regex = json.loads(file.read())
JSONDecodeError:无效\escape


尝试更改编码,但仍然没有成功。。。有什么想法吗?

你应该避开反斜杠

{
    "43455": ["(\\(.*\\))"],
    "55655": ["(\\d{2,3})\\"]
}

仅仅因为您将类似于JSON的内容放入以
.JSON
结尾的文件中,并不意味着它是有效的JSON。你可以使用一个验证器来检查你的JSON是否真的有效。你希望得到什么结果?@mkrieger1我确实希望它能够正确加载,这样我就可以根据id使用正则表达式代码。Wura的回答帮助了这个问题:你希望正则表达式模式是
(\d{2,3})\
还是
(\d{2,3})
?尾随的
\
似乎可疑。@mkrieger1感谢您的注意。实际上,我有一个带有数字字符串的字段,比如:
13”(50lg)40!
,我想提取双引号前面的两位数或三位数。因此,为了实现这一点,我想我需要在json文件中添加另一个双qoute符号