我收到以下错误:
字符串索引必须是整数,而不是str
我该如何解决这个问题?这是代码:
if args['params']['text'][:5] == '!temp':
degreeChar = u'\u00b0'
url = 'http://api.worldweatheronline.com/free/v1/weather.ashx?q=' + args['params']['text'][9:] + '&format=json&num_of_days=1&key=' + WeatherAPIkey
json_obj = urllib.urlopen(url)
data = json.load(json_obj)
temp = int(data['data']['current_condition']['temp_C'])
ws.send('5:::' + genMessage('chatMsg', channel, username, 'Temperature in ' + args['params']['text'][6:] + ': ' + temp + degreeChar + 'C'))
错误在这一行:temp = int(data['data']['current_condition']['temp_C'])
API位于:img
答案 0 :(得分:1)
data['data']['current_condition']
会返回一个列表,因此您需要使用:
`data['data']['current_condition'][0]['temp_C']`
访问列表中的dict。