我试图在python中解析一个非常简单的json字符串,但我得到一个格式错误的字符串错误.我知道它是一个类型字符串(见下文),所以这不是问题为什么这个字符串不适用于ast.literal_eval
为什么我可能会收到此错误?我该如何解决?
g = "{\"RequestType\":\"1\" , \"FileName\":\"" + "test" + "\" }" print type(g) //prints string d = ast.literal_eval(json.loads(g)) //throws malformed string error
BrenBarn.. 6
json.loads
返回字典,而不是字符串.大概这就是你想要的,所以你根本不需要literal_eval
; 只是单独使用json.loads(g)
.或者你可以单独使用ast.literal_eval(g)
.关键是你只需要其中一个功能,而不是两个功能,因为它们或多或少都是相同的.
json.loads
返回字典,而不是字符串.大概这就是你想要的,所以你根本不需要literal_eval
; 只是单独使用json.loads(g)
.或者你可以单独使用ast.literal_eval(g)
.关键是你只需要其中一个功能,而不是两个功能,因为它们或多或少都是相同的.