Python 将JSON文件放入字典
我正在尝试将JSON文件转换为python dict,但失败了 这是我的JSON文件:Python 将JSON文件放入字典,python,json,Python,Json,我正在尝试将JSON文件转换为python dict,但失败了 这是我的JSON文件: me.json: { "title": "this is title", "Description": " Fendi is an Italian luxury labelarin. ", "url": "https:/~" } { "title": " - Furrocious Elegant Style", "Description": " the Italian
me.json
:
{
"title": "this is title",
"Description": " Fendi is an Italian luxury labelarin. ",
"url": "https:/~"
}
{
"title": " - Furrocious Elegant Style",
"Description": " the Italian luxare vast. ",
"url": "https://www.s"
}
{
"title": "Rome, Fountains and Fendi Sunglasses",
"Description": " Fendi started off as a store. ",
"url": "https://www.~"
}
{
"title": "Tipsnglasses",
"Description": "Whether irregular orn season.",
"url": "https://www.sooic"
}
这是我的python代码:
import json
with open('me.json', 'r') as obj:
a = obj.read()
for i in a:
medict = dict(i)
我不知道它为什么不起作用,出了什么问题
有人能帮我吗?请使用
json.loads
但是,您必须首先将文件中的数据更改为json格式。请使用以下数据。
我添加了
[
,]
和,
[{
"title": "this is title",
"Description": " Fendi is an Italian luxury labelarin. ",
"url": "https:/~"
}
,
{
"title": " - Furrocious Elegant Style",
"Description": " the Italian luxare vast. ",
"url": "https://www.s"
}
,
{
"title": "Rome, Fountains and Fendi Sunglasses",
"Description": " Fendi started off as a store. ",
"url": "https://www.~"
}
,
{
"title": "Tipsnglasses",
"Description": "Whether irregular orn season.",
"url": "https://www.sooic"
}]
以及,请参阅以下代码:
import json
with open('me.json', 'r') as obj:
a = obj.read()
medict = json.loads(a)
print (medict)
结果是:
[{'title': 'this is title', 'Description': ' Fendi is an Italian luxury labelarin. ', 'url': 'https:/~'}, {'title': ' - Furrocious Elegant Style', 'Description': ' the Italian luxare vast. ', 'url': 'https://www.s'}, {'title': 'Rome, Fountains and Fendi Sunglasses', 'Description': ' Fendi started off as a store. ', 'url': 'https://www.~'}, {'title': 'Tipsnglasses', 'Description': 'Whether irregular orn season.', 'url': 'https://www.sooic'}]
您可以使用
re
模块在输入文件中查找JSON对象(严格来说,输入文件不在中),如您的问题所示(即无需修改):
输出:
[{'Description':'芬迪是一款意大利豪华拉伯兰牌',
“标题”:“这是标题”,
“url”:“https://~”},
{'Description':'Italian Luxer Width',
‘标题’:‘毛茸茸的优雅风格’,
“url”:”https://www.s'},
{'Description':'Fendi最初是一家商店。',
‘标题’:‘罗马,喷泉和芬迪太阳镜’,
“url”:”https://www.~'},
{'Description':'是否为不规则的季节',
‘标题’:‘酒鬼’,
“url”:”https://www.sooic'}]
导入json
和将open('me.json')作为infle:L=json.load(infle)
要将json文件转换为python dict,应使用json.load(obj)。您收到的错误是什么?输入文件不是正确的json。我建议使用[]来包围输入,以便使用json.loads()
可以轻松地读取它,标记的副本上的内容不是可接受的内容。它允许您在不首先编辑json的情况下解析json。@tchatow:仅使用[]
是不够的。还需要逗号。
import ast
import json
from pprint import pprint
import re
with open('me.json', 'r') as obj:
data = obj.read()
matches = re.findall(r'({.+?})', data, re.DOTALL)
result = [json.loads(m) for m in matches]
pprint(result)