Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中获取api时避免这些错误_Python_Api - Fatal编程技术网

如何在python中获取api时避免这些错误

如何在python中获取api时避免这些错误,python,api,Python,Api,此代码用于从accuweather检索天气数据。当我运行文件时,我得到一个错误: TypeError:列表索引必须是整数或片,而不是str 初始json文件的示例图像如下: 请帮助我解决错误您只需要x,但您还需要认识到它是一个列表: a=x[0]['WeatherText'] 变量z是目录的列表。因此,您需要通过以下方式进入第一个位置: a=z[0]['WeatherText'] 请用完整的错误回溯更新您的问题。顺便说一句,我想您只需要xy和z只是复制了x中已有的内容。看起来z是一个dict的

此代码用于从accuweather检索天气数据。当我运行文件时,我得到一个错误:

TypeError:列表索引必须是整数或片,而不是str

初始json文件的示例图像如下:


请帮助我解决错误

您只需要
x
,但您还需要认识到它是一个列表:

a=x[0]['WeatherText']

变量
z
目录的
列表
。因此,您需要通过以下方式进入第一个位置:

a=z[0]['WeatherText']

请用完整的错误回溯更新您的问题。顺便说一句,我想您只需要
x
y
z
只是复制了
x
中已有的内容。看起来
z
是一个
dict
的列表,不能用字符串索引列表,必须先提取
dict
import requests
import json
response = requests.get('http://dataservice.accuweather.com/currentconditions/v1/2807435?apikey=secret')
print(response)
x = response.json()
y = json.dumps(x)
z = json.loads(y)
a = z['WeatherText']
print(a)
yt = input("Press Enter to close")