首页 > 解决方案 > 从 Python 中的列表创建 JSON

问题描述

我有一个包含一堆句子的列表,非常像下面这样:

[“你好,你好吗”、“你今天看起来很棒”、“你的鞋子很丑”、“你妈妈好胖……”]

我想使用 Azure Cognitive Services API,它期望其请求采用以下形式:

{
  "documents": [
    {
      "language": "en",
      "id": "1",
      "text": "Hello, how are you"
    },
    {
      "language": "en",
      "id": "2",
      "text": "You look great today"
    },
    {
      "language": "en",
      "id": "3",
      "text": "Your momma so fat she..."
    }
  ]
}

我不知道如何从平面列表创建嵌套 json。我需要为id列表中的每个元素递增,并且language需要en为列表中的每个项目递增。

任何帮助或链接将不胜感激

标签: jsonpython-3.xlistpython-requestspython-jsons

解决方案


除非我遗漏了您的问题,否则在创建所需的 JSON 时迭代您的数组可能是最简单的。Python 允许您创建数组,例如:

[something(i) for i in someArray]

对于您的示例,您可能可以执行以下操作:

yourText = ["There is text", "in this array", "please convert it!"]

yourJSON = {"documents" : [{ "language" : "en", "id" : str(idx + 1), "text": val} for idx, val in enumerate(array)]}

推荐阅读