Python API响应-如何格式化/选择响应的布局

Python API响应-如何格式化/选择响应的布局,python,json,python-2.7,rest,Python,Json,Python 2.7,Rest,我对Python(我想是2.7版)已经有2天了,我正在努力使这里的API响应更具可读性,目前很难理解英文响应 import json, requests response = requests.get("http://data.dublinked.ie/cgi- bin/rtpi/realtimebusinformation?stopid=1341&routeid=49&format=json") data = response.json() print data 答案是

我对Python(我想是2.7版)已经有2天了,我正在努力使这里的API响应更具可读性,目前很难理解英文响应

import json, requests

response = requests.get("http://data.dublinked.ie/cgi-
bin/rtpi/realtimebusinformation?stopid=1341&routeid=49&format=json")

data = response.json()

print data
答案是这样的,而且非常难看:(我想)格式化它,使它更可读,可能在列表或键:值对中?B) 如何仅从响应中选择某些信息

numberofresults: 2
timestamp: 16/01/2018 17:04:15
errormessage: 
results: [{u'origin': u'Tallaght', u'direction': u'Inbound',
u'destinationlocalized': u'Sr\xe1id an Phiarsaigh', u'monitored': u'true',         
u'departureduetime': u'6', u'route': u'49', u'additionalinformation': u'',         
u'destination': u'Pearse St', u'scheduleddeparturedatetime': u'16/01/2018 
17:09:00', u'scheduledarrivaldatetime': u'16/01/2018 17:09:00', 
u'sourcetimestamp': u'16/01/2018 17:01:53', u'operator': u'bac', 
u'departuredatetime': u'16/01/2018 17:10:56', u'arrivaldatetime': 
u'16/01/2018 17:10:56', u'lowfloorstatus': u'no', u'originlocalized':                                 
u'Tamhlacht', u'duetime': u'6'}, {u'origin': u'Tallaght', u'direction': 
u'Inbound', u'destinationlocalized': u'Sr\xe1id an Phiarsaigh', 
u'monitored': u'true', u'departureduetime': u'37', u'route': u'49', 
u'additionalinformation': u'', u'destination': u'Pearse St', 
u'scheduleddeparturedatetime': u'16/01/2018 17:42:00', 
u'scheduledarrivaldatetime': u'16/01/2018 17:42:00', u'sourcetimestamp': 
u'16/01/2018 16:43:44', u'operator': u'bac', u'departuredatetime': 
u'16/01/2018 17:42:13', u'arrivaldatetime': u'16/01/2018 17:42:13', 
u'lowfloorstatus': u'no', u'originlocalized': u'Tamhlacht', u'duetime': 
u'37'}]
errorcode: 0
stopid: 1341
[Finished in 0.7s]
我很可能正在加倍思考一个问题/答案,但我似乎找不到它!很抱歉 还有,u这个词我也不懂


提前感谢大家x

u代表unicode字符串。返回类型是键值(字典)数据类型


python中的json库非常有用,尤其是在处理json对象时。我将特别介绍json.dump和json.dumps方法。如果查看,json.dumps将返回一个字符串,并接受分隔符参数和缩进参数

import json, requests

response = requests.get("http://data.dublinked.ie/cgi-bin/rtpi/realtimebusinformation?stopid=1341&routeid=49&format=json")
print(json.dumps(response.json(), separators=(",",":"), indent=4)

如上所述,字符串前面的u表示unicode字符串,您现在可以放心地忽略它。

为什么要使用python2.7?将不会被维护。响应已存在于键:值对中。您有一个包含词典的列表。例如,尝试
打印(结果[0]['destination'])
u
是python显示的表面标记,表示字符串是Unicode。“u”代表Unicode字符串。正如rohan所说,它可能位于键值pairSee re:u前缀中。至于格式,很难说你想要什么。响应是一个简单的字典,所以漂亮的打印可能只会给你一个列表,所以如果你想以更精细的格式打印输出,你需要搜索python字符串格式。非常感谢你的帮助!
import json, requests

response = requests.get("http://data.dublinked.ie/cgi-bin/rtpi/realtimebusinformation?stopid=1341&routeid=49&format=json")
print(json.dumps(response.json(), separators=(",",":"), indent=4)