【发布时间】:2022-01-11 23:04:19
【问题描述】:
所以我正在努力从 JSON 响应中获取值。在其他帖子中,我设法编写了这段代码,但是当我尝试在字典中搜索我想要的键 (character_id) 时,python 说该键不存在。我的解决方案包括从响应中获取 JSON 对象,使用 json.dumps() 将其转换为字符串,然后使用 json.loads() 将其转换为字典。然后我尝试从字典中获取'character_id',但它不存在。我猜它与字典的格式有关,但我在 python 方面几乎没有经验。进行查询并尝试获取值的代码是这样的:(dataRequest 是一个发出请求并从 api 返回响应的函数)
characterName = sys.argv[1];
response = dataRequest('http://census.daybreakgames.com/s:888/get/ps2:v2/character/?name.first_lower=' + characterName + '&c:show=character_id')
jsonString = json.dumps(response.json())
print(jsonString)
dic = json.loads(jsonString)
print(dic)
if 'character_id' in dic:
print(dic['character_id'])
代码的输出是:
{"character_list": [{"character_id": "5428662532301799649"}], "returned": 1}
{'character_list': [{'character_id': '5428662532301799649'}], 'returned': 1}
【问题讨论】: