首页 > 解决方案 > 使用 Python 将字符串变量转换为 JSON

问题描述

我正在使用python。我有一个名为“var”的变量,它带有方括号,我想将其删除并将其更改为有效的 JSON。是否有捷径可寻?我一直在尝试,但仍然没有运气。

var = '''
 [
    [
      "result 1"
    ],
    [
      "result 2"
    ],
    [
      "result 3"
    ],
    [
      "result 4"
    ],
    [
      "result 5"
    ],
    [
      "result 6"
    ],
    [
      "result 7"
    ]
  ]
'''  

目标结果

  {
    "result 1": "result 1",
    "result 2": "result 2",
    "result 3": "result 3",
    "result 4": "result 4",
    "result 5": "result 5",
    "result 6": "result 6",
    "result 7": "result 7"
  }

我试过的

  def listToStringWithoutBrackets(list1):
    return "{" + str(list1).replace('[','').replace(']','') + "}"

print(listToStringWithoutBrackets(var))

标签: pythonjson

解决方案


var 已经是有效的 json,只需将列表数组转换为字典即可。

import json

data = json.loads(var)
new_json = {}
# convert list to dictionary
for i in data:
    new_json[i[0]] = i[0]

# create string as json
new_var = json.dumps(new_json)
print(new_var)

推荐阅读