我正在尝试创建一个程序,在该程序中我从API接收COVID-19患者的数量并使用该数据。
这是我的代码:
import requests
from datetime import date
from datetime import timedelta
date = str(date.today() - timedelta(days=1))
country = 'india'
def search(date, country):
print("Showing Data For :", date)
url = "https://covid-19-data.p.rapidapi.com/report/country/name"
querystring = {"date-format":"undefined","format":"undefined","date":date,"name":country}
headers = {
'x-rapidapi-host': "covid-19-data.p.rapidapi.com",
'x-rapidapi-key': "286798d6demshcf160ec64afce22p11662bjsn40bdced08453"
}
response = requests.request("GET", url, headers=headers, params=querystring).json()
data = response[0]
data = data["provinces"]
data = data[0]
return data
search(date, country)
print("Total Cases In India :", data['confirmed'])
每当我执行代码时,我都会出错。
这是错误:NameError:未定义名称“数据”
答案 0 :(得分:1)
您没有使用返回值。
import requests
from datetime import date
from datetime import timedelta
date = str(date.today() - timedelta(days=1))
country = 'india'
def search(date, country):
print("Showing Data For :", date)
url = "https://covid-19-data.p.rapidapi.com/report/country/name"
querystring = {"date-format": "undefined", "format": "undefined", "date": date, "name": country}
headers = {
'x-rapidapi-host': "covid-19-data.p.rapidapi.com",
'x-rapidapi-key': "286798d6demshcf160ec64afce22p11662bjsn40bdced08453"
}
response = requests.request("GET", url, headers=headers, params=querystring).json()
data = response[0]
data = data["provinces"]
data = data[0]
#THIS DATA VARIABLE DOES NOT EXIST OUTSITE OF THE FUNCTION
return data
# HERE YOU NEED TO ASSIGN THE RETURN VARIABLE TO THE DATA VARIABLE
data = search(date, country)
print("Total Cases In India :", data['confirmed'])
答案 1 :(得分:1)
print("Total Cases In India :", data['confirmed'])
这在函数外部,并且变量数据在函数范围内定义,因此在它们外部不可见。您应该调用该函数并将其存储在变量中。然后像上面的答案中的@Nivardo一样在打印中使用它。