【问题标题】:How to work with JSON (JSONArray) in Python Processing如何在 Python 处理中使用 JSON (JSONArray)
【发布时间】:2020-06-30 13:33:04
【问题描述】:

这是一个从 Java 处理教程复制的示例,希望在 Python 处理中有类似的东西。

    
String[] species = { "Capra hircus", "Panthera pardus", "Equus zebra" };
String[] names = { "Goat", "Leopard", "Zebra" };

JSONArray values;

void setup() {

  values = new JSONArray();

  for (int i = 0; i < species.length; i++) {

    JSONObject animal = new JSONObject();

    animal.setInt("id", i);
    animal.setString("species", species[i]);
    animal.setString("name", names[i]);

    values.setJSONObject(i, animal);
  }

  saveJSONArray(values, "data/new.json");
}

这是我已经在 Python 中尝试过的。

import json

values = JSONArray

species = [ "Capra hircus", "Panthera pardus", "Equus zebra"]
names = [ "Goat", "Leopard", "Zebra" ]

def setup():
    for i in range(len(species)):
        animal = JSONObject

        animal.setInt("id", i)
        animal.setString("species", species[i])
        animal.setString("name", names[i])

        values.setJSONObject(i, animal)

    saveJSONArray(values, "data/new.json")

运行程序后出现以下错误:
NameError: name 'JSONArray' is not defined

我知道在 Python 处理中应该有另一种声明 JSON 对象的方法,但我是 Python 新手,所以我不知道错误可能是什么。

提前致谢:)

【问题讨论】:

    标签: python json processing


    【解决方案1】:

    values ==JSONArray 完全错误在 python 中没有这样的声明。

    我想首先你应该查看 python 教程。对于你的问题

    array = '{"fruits": ["apple", "banana", "orange"]}'
    data  = json.loads(array)
    print data['fruits']
    

    是您问题的一个很好的例子。

    【讨论】:

    • link 是一个很好的解决方案。
    【解决方案2】:
    import json
    
    annotations = [0,1,2]
    species = [ "Capra hircus", "Panthera pardus", "Equus zebra"]
    names = [ "Goat", "Leopard", "Zebra" ]
    
    
    def setup(anotations, species, names):
        values = []
    
        for idx, _ in enumerate(annotations):
            animal = {
                "id": idx,
                "species": species[idx],
                "name": names[idx]
            }
    
            values.append(animal)
    
        with open("data_file.json", "w") as write_file:
          json.dump(values, write_file)
    
    
    if __name__ == "__main__":
      setup(annotations, species, names)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-06
      • 1970-01-01
      • 1970-01-01
      • 2010-11-05
      • 2016-09-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多