Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/16.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
如何从json获取python中属性的属性?_Python_Json - Fatal编程技术网

如何从json获取python中属性的属性?

如何从json获取python中属性的属性?,python,json,Python,Json,我在学习python时遇到了一个简单的问题,我找不到答案 假设我们有一个json: { "Meta Data": { "random": "random" }, "Time Series (1min)": { "2020-03-31 16:00:00": { "1. open": "523.1900", "2. high": "524.9000", "3. low": "523.1000", "4. close": "

我在学习python时遇到了一个简单的问题,我找不到答案

假设我们有一个json:

{
"Meta Data": {
   "random": "random"
},
"Time Series (1min)": {
    "2020-03-31 16:00:00": {
        "1. open": "523.1900",
        "2. high": "524.9000",
        "3. low": "523.1000",
        "4. close": "524.5200",
        "5. volume": "138425"
    },
    "2020-03-31 15:59:00": {
        "1. open": "522.0100",
        "2. high": "523.8900",
        "3. low": "522.0100",
        "4. close": "523.4100",
        "5. volume": "82971"
    }
 }
 }

现在,我想以字符串列表的形式从这个json中获取所有“close”属性,如何使用python 3.7实现这一点?

我假设您希望使用close attributes value

修改代码:



输出:

['524.5200', '523.4100']

这里js是您的输入JSON。

我假设您希望使用close attributes值

修改代码:



输出:

['524.5200', '523.4100']
这里js是您的输入JSON。

1)提取您需要从中获取数据的dict 2) 循环遍历dict,获取以“close”结尾的键,然后检索该键的值。你可以在一行中完成全部工作 3) 输出是一个关闭值列表

data=json.loads(jsondata)
tm_data = data['Time Series (1min)']
close_items = [value[internalvalue] for key,value in tm_data.items() for internalvalue in value.keys() if internalvalue.endswith('close')]
1) 提取需要从中获取数据的dict 2) 循环遍历dict,获取以“close”结尾的键,然后检索该键的值。你可以在一行中完成全部工作 3) 输出是一个关闭值列表

data=json.loads(jsondata)
tm_data = data['Time Series (1min)']
close_items = [value[internalvalue] for key,value in tm_data.items() for internalvalue in value.keys() if internalvalue.endswith('close')]

这有用吗?这有用吗?请添加几句话来解释您的代码在做什么,这样您的答案就可以获得更多的投票。请添加几句话来解释您的代码在做什么,这样您的答案就可以获得更多的投票。非常感谢,经过一些修改后,我的代码工作得很好,您能告诉我为什么会有
[0]
at
vals=get_value(js,'4.close')[0]
我对py也有点不了解,但是我应该像你一样用snake-case命名我的函数吗?谢谢你的解决方案!这个
get_值(js,'4.close')
返回
[['524.5200','523.4100']]
,这就是为什么使用[0]只获取
['524.5200','523.4100']
非常感谢,经过一些修改,我的代码工作得很好,你能告诉我为什么
vals=get_值(js,'4.close')[0]有一个
[0]
我对py也有点不在行,但我应该像你一样用snake-case命名我的函数吗?谢谢你的解决方案!这个
get_值(js,'4.close')
返回
[[524.5200','523.4100']]
,这就是为什么使用[0]只获取
['524.5200','523.4100']