【发布时间】:2017-02-17 14:06:08
【问题描述】:
我有一个 json,它的前几行是:
{
"type": "Topology",
"objects": {
"counties": {
"type": "GeometryCollection",
"bbox": [-179.1473399999999, 17.67439566600018, 179.7784800000003, 71.38921046500008],
"geometries": [{
"type": "MultiPolygon",
"id": 53073,
"arcs": [
[
[0, 1, 2]
]
]
},
我根据这些数据构建了一个 python 字典,如下所示:
import json
with open('us.json') as f:
data = json.load(f)
这是一个很长的 json(美国的每个县)。然而,当我运行时:len(data) 它返回 4。我对此有点困惑。所以我开始进一步探索和探索数据:
data['id']
data['geometry']
两者都返回关键错误。但是我知道这个 json 文件是为这些属性定义的。事实上,这就是 json 的全部内容,它是每个县“id”的 id 和每个县“几何”的一系列多边形坐标。输入data 确实会返回整个json,我可以通过这种方式查看属性,但这并没有太大帮助。
我的最终目的是在 json 文件中添加一个属性,有点类似这样:
Add element to a json in python
不同之处在于我添加了一个来自 tsv 的属性。如果您想了解所有详细信息,可以在这里找到我的 json 和 tsv:
https://gist.github.com/diggetybo/ca9d3c2fed76ddc7185cf966a65b8718
为了清楚起见,让我总结一下我在问什么:
我的问题是:为什么我不能以上述方式访问属性?有人可以提供一种访问我感兴趣的属性的方法('id','geometries')或者更好的是,演示如何添加属性?
谢谢
【问题讨论】: