为什么未定义“参数”

时间:2020-02-11 03:50:12

标签: python python-requests

我正在关注https://www.dataquest.io/blog/python-api-tutorial/上的教程。据说没有定义“参数”。 URL具有params = parameters,我在编码中使用过并且仍然出错。不知道如何纠正它。

这是代码:

import requests
import json

response = requests.get("http://api.open-notify.org/astros.json")
response = requests.get("http://api.open-notify.org/iss-pass.json", params=parameters)

def jprint(obj):
        # create a formatted string of the Python JSON object
        text = json.dumps(obj, sort_keys=True, indent=4)
        print(text)

parameters = {
    "lat":27.8006,
    "lon":97.3864
}

jprint(response.json())

2 个答案:

答案 0 :(得分:0)

在实际初始化之前,您正在呼叫parameters。将parameters字典移至response上方。

答案 1 :(得分:0)

正如Jeoren所说的,您在定义参数之前正在使用它的parameter变量。要解决此问题,您必须将参数声明移至响应代码上方,如下所示:

import requests
import json

parameters = {
    "lat":27.8006,
    "lon":97.3864
}

response = requests.get("http://api.open-notify.org/astros.json")
response = requests.get("http://api.open-notify.org/iss-pass.json", params=parameters)

def jprint(obj):
        # create a formatted string of the Python JSON object
        text = json.dumps(obj, sort_keys=True, indent=4)
        print(text)

jprint(response.json())