首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在嵌套的json源中提取一个值?

如何在嵌套的json源中提取一个值?
EN

Stack Overflow用户
提问于 2014-10-09 06:55:21
回答 2查看 154关注 0票数 0

我在试着从json源获取温度。它是嵌套的,我不知道如何从json文件或url中获取嵌套值,所以到目前为止我的代码如下:

代码语言:javascript
运行
复制
    #! /usr/bin/python
    import urllib2
    import json
    f = urllib2.urlopen('http://api.openweathermap.org/data/2.5/find?q=London&units=metric')
   json_string = f.read()
   parsed_json = json.loads(json_string)
   temp = parsed_json['list']
   print "Current temperature is: %s" % (temp)
   f.close()

现在我可以一次获得所有的值,但不只是一个特定的值(在我的例子中是temp),如果可能的话,我更喜欢在没有u‘temp’的情况下获得干净的值。

EN

回答 2

Stack Overflow用户

发布于 2014-10-09 07:02:28

u'temp'是Python表示unicode对象的方式,这也是JSON字符串在Python中的解析方式。这就是你要找的吗?

代码语言:javascript
运行
复制
print temp[0]['main']['temp']

我不知道您调用的API的结构,所以这可能做了相当多的假设,但它会得到原始温度。

票数 0
EN

Stack Overflow用户

发布于 2014-10-09 07:05:31

您将得到几个值。要将它们全部列出,请执行以下操作:

代码语言:javascript
运行
复制
import urllib2
import json

f = urllib2.urlopen('http://api.openweathermap.org/data/2.5/find?q=London&units=metric')
json_string = f.read()
parsed_json = json.loads(json_string)
for each in parsed_json['list']:
    country = each['sys']['country']
    temperature = each['main']['temp']
    print "Current Temperature in {} is {}".format(country, temperature)

输出

代码语言:javascript
运行
复制
Current Temperature in CA is 11.73
Current Temperature in GB is 11.8
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26267744

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档