【发布时间】:2018-05-14 14:17:28
【问题描述】:
我需要准备测试,它将 .json 文件的内容与预期结果进行比较(我们想检查 .json 中的值是否由我们的开发工具正确生成)。 对于测试,我将使用机器人框架或单元测试,但我还不知道如何正确解析 json 文件。 json示例:
{
"Customer": [{
"Information": [{
"Country": "",
"Form": ""
}
],
"Id": "110",
"Res": "",
"Role": "Test",
"Limit": ["100"]
}]
}
所以在我执行这个之后:
with open('test_json.json') as f:
hd = json.load(f)
我得到 dict 'hd' 其中键是:
dict_keys(['Customer'])
和价值观:
dict_values([[{'Information': [{'Form': '', 'Country': ''}], 'Role': 'Test', 'Id': '110', 'Res': '', 'Limit': ['100']}]])
我的问题是我不知道如何从 Dict 中仅获取一个值(例如:角色:测试),因为我只能提取整个值。我可以准备一个长字符串进行比较,但这不是测试的最佳解决方案。
有什么想法可以从.json 文件中仅获取一行吗?
【问题讨论】:
-
为什么?它会解决我的问题吗?
-
你可以通过
_role = hd['Customer'][0]['Role']访问Test -
@glibdud 你说得对,我的错。我删除了那条评论。
-
你只要
values[0]['Role'] -
@AliYılmaz 你的意思是:print(hd['Customer'][0]['Role'])?,这里的 [0] 是什么意思 - 我是 python 中的菜鸟:D
标签: python json python-3.x