使用Python

时间:2016-01-14 09:57:31

标签: python json validation

此字符串将返回到我的应用程序:

[
  {
    "object1": "here",
    "morekeys": "can also have objects as values"
  }
  {
    "object2": "here",
    "morekeys": "can also have objects as values"
  }
]

该字符串无效JSON。所有缺少的是两个有效JSON对象之间的逗号。

使用Python将此字符串转换为有效JSON的最佳方法是什么?

编辑:

该字符串是调用subprocess.check_output()的结果,例如:

my_string = "[" + subprocess.check_output("command1 && command2", shell=True, stderr=STDOUT) + "]"

由于每个命令都输出一个有效的JSON对象,因此我收到了无效的JSON。

2 个答案:

答案 0 :(得分:3)

在shell命令中输入逗号:

my_string = "[{}]".format(
    subprocess.check_output("command1 && echo ',' && command2",
                            shell=True, stderr=STDOUT, env=env))

答案 1 :(得分:1)

正则表达式?

import re
re.sub(r'}(\s*){', r'},\1{', my_string)