【发布时间】:2016-12-21 20:07:12
【问题描述】:
这非常令人沮丧,我一直在互联网上试图找到它。
我的问题是我无法打印我的两个列表 - 团队名称和积分 - 彼此相邻。
当我打印(见代码)时,它会正确打印到终端输出。
当我返回完全相同的东西时,我只是获得了最后一名的球队!
@app.route('/League Standing', methods=['GET','POST'])
def show_league():
text = request.form['league']
connection = httplib.HTTPConnection('api.football-data.org')
headers = {'X-Auth-Token': 'key', 'X-Response-Control': 'minified'}
connection.request('GET', '/v1/competitions/'+text+'/leagueTable', None, headers)
response = json.loads(connection.getresponse().read().decode())
teamnames = [r['team'] for r in response['standing']]
points = [r['points'] for r in response['standing']]
for t, p in zip(teamnames, points):
print('{}: {}'.format(t,p))
return jsonify('{}: {}'.format(t,p))
if __name__ == '__main__':
app.run(debug=True)
当我打印到终端时会发生以下情况:
Chelsea: 43
Liverpool: 37
ManCity: 36
Arsenal: 34
Spurs: 33
ManU: 30
Southampton: 24
West Bromwich: 23
Everton: 23
Bournemouth: 21
Stoke: 21
Watford: 21
West Ham: 19
Middlesbrough: 18
Foxes: 17
Burnley: 17
Crystal: 15
Sunderland: 14
Swans: 12
Hull: 12
当我打印到烧瓶网站时:
Hull: 12
我想将正在打印的内容返回到终端,网站!!!
请告诉我任何想法!
请帮忙。
【问题讨论】:
-
再看看你的代码:你只返回 (t, p),这是你的循环的最终值,而不是 for 循环中的所有元素。
-
回到我之前的评论HERE。 您打印的内容与通过 Flask 返回的内容之间存在差异。您需要做的就是
jsonify(dict(zip(teamnames, points)))。而且,我在你之前的帖子中已经提到过这个答案