首页 > 解决方案 > 为什么没有定义“参数”

问题描述

我正在关注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())

标签: pythonpython-requests

解决方案


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

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())

推荐阅读