Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.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-过滤dict JSON响应以仅返回两个值或转换为字符串?_Python_Json_String_Dictionary_Filter - Fatal编程技术网

Python-过滤dict JSON响应以仅返回两个值或转换为字符串?

Python-过滤dict JSON响应以仅返回两个值或转换为字符串?,python,json,string,dictionary,filter,Python,Json,String,Dictionary,Filter,我在Python中操作一个URL,该URL调用API并在JSON中获得有效结果 我只需要[result]提供的“纬度”和“经度” 但是,我似乎找不到任何好方法来处理将dict值发送回的问题 我曾尝试将JSON转换为字符串,但我的最终目标是将纬度和经度附加到另一个URL,这似乎很愚蠢 一直在四处搜索,似乎解析DICT是一个常见的问题 谁能给我指出正确的方向吗 我运行的代码 import urllib2 import json Postcode = raw_input("Hello hello he

我在Python中操作一个URL,该URL调用API并在JSON中获得有效结果

我只需要[result]提供的“纬度”和“经度”

但是,我似乎找不到任何好方法来处理将dict值发送回的问题

我曾尝试将JSON转换为字符串,但我的最终目标是将纬度和经度附加到另一个URL,这似乎很愚蠢

一直在四处搜索,似乎解析DICT是一个常见的问题

谁能给我指出正确的方向吗

我运行的代码

import urllib2
import json
Postcode = raw_input("Hello hello hello, what's your postcode..?  ")
PostcodeURL = 'https://api.postcodes.io/postcodes/' + Postcode
json_str = urllib2.urlopen(PostcodeURL).read()
d = json.loads(json_str)
print(d)
输出如下所示:

{u'status': 200, u'result': {u'eastings': 531025, u'outcode': u'N8', u'admin_county': None, u'postcode'

您得到了一个嵌套字典,因此可以使用正确的键访问它的值:

d = json.loads(json_str)
lat, long = d['result']['latitude'], d['result']['longitude']
newurl = url + '?' + 'lat=' + lat + '&lon=' + lon

您得到了一个嵌套字典,因此可以使用正确的键访问它的值:

d = json.loads(json_str)
lat, long = d['result']['latitude'], d['result']['longitude']
newurl = url + '?' + 'lat=' + lat + '&lon=' + lon

您可以像访问字典一样访问JSON对象。因此,要从结果中获取纬度和经度,可以使用:

纬度,长=d[结果][纬度],d[结果][经度]


将它们加载到字符串中,进行错误检查,然后将它们附加到新URL中。

您可以像访问字典一样访问JSON对象。因此,要从结果中获取纬度和经度,可以使用:

纬度,长=d[结果][纬度],d[结果][经度]

将它们加载到字符串中,进行错误检查,然后将它们附加到新的URL中