【问题标题】:Convert array of arrays to json in Python [duplicate]在Python中将数组数组转换为json [重复]
【发布时间】:2018-10-12 09:09:17
【问题描述】:

我有一个数组数组,我使用 SQLAlchemy 从数据库查询中获得,我想做两件事。

  • 我想获取列的名称(或类似 SELECT fullname AS "name n' surname" from table)。
  • 我想将最终产品转换为对象的 json 数组,以便在前端使用它。

我已经搜索了几个小时,但找不到适合我的情况的答案。

这是查询数据库并将其存储在 results 变量中的代码行:

results = session.query(categories.categoryname, products.pack, products.price, products.checkstate).join(products).all()

这是print(results)的输出:

[('chocolate', '3', 5, False), ('chocolate', '5', 7, False), ('chocolate', '10', 10, False), ('honey' , '3', 5, False), ('honey', '5', 7, False), ('honey', '10', 10, False), ('candy', '3', 5, False ), ('candy', '5', 7, False), ('candy', '10', 10, False)]

如果我使用json.dump(results),我会得到:

[[“巧克力”,“3”,5,假],[“巧克力”,“5”,7,假],[“巧克力”,“10”,10,假],[“蜂蜜” , "3", 5, false], ["honey", "5", 7, false], ["honey", "10", 10, false], ["糖果", "3", 5, false ], ["糖果", "5", 7, false], ["糖果", "10", 10, false]]

现在更具体地说,我想要得到的是:

[{"type": "chocolate", "pack": "3", "price": 5, "checkstate": false}, ....etc...]

【问题讨论】:

    标签: python arrays flask sqlalchemy


    【解决方案1】:

    您可以简单地遍历您的元组列表来创建字典,然后可以将其转换为 JSON。像这样的:

    import json
    
    data = [('chocolate', '3', 5, False), ('chocolate', '5', 7, False), ('chocolate', '10', 10, False), ('honey', '3', 5, False), ('honey', '5', 7, False), ('honey', '10', 10, False), ('candy', '3', 5, False), ('candy', '5', 7, False), ('candy', '10', 10, False)]
    
    list = [{"pack": x[0], "pack": x[1], "price": x[2], "checkstate": x[3]} for x in data]
    
    json.dumps(list)
    

    【讨论】:

      猜你喜欢
      • 2014-06-11
      • 2012-02-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-06
      • 1970-01-01
      • 2017-07-23
      • 1970-01-01
      相关资源
      最近更新 更多