使用json.dumps(string)转储字符串

时间:2015-05-12 09:48:08

标签: python json

我想将字符串放入json.dumps()

string = "{data}"

print json.dumps(string)

我得到了:

"{data}"代替:{data}

如何在没有引号的情况下获取此字符串?

方法replace

json.dumps(string.replace('"', '')

strip

json.dumps(string.strip('"')

不起作用。

2 个答案:

答案 0 :(得分:10)

您不能将 字符串转储 字符串。

d = {"foo": "bar"}
j = json.dumps(d)
print(j)

输出:

{"foo": "bar"}

使用字符串作为json.dumps的参数是没有意义的,它期望字典或列表/元组作为参数。

  

使用此转换表将obj序列化为JSON格式的str。

答案 1 :(得分:-1)

In [17]: d = {"foo": "bar"}

In [18]: j = json.dumps(d)

In [19]: j
Out[19]: '{"foo": "bar"}'

现在,如果你需要你的字典而不是字符串

In [37]: l=json.loads(j)

In [38]: l
Out[38]: {u'foo': u'bar'}

或者

In [20]: import ast
In [22]: k=ast.literal_eval(j)

In [23]: k
Out[23]: {'foo': 'bar'}