Python 向变量添加额外\\的json.dumps问题
我目前正在开发一个python客户机,与我正在开发的Web服务进行对话。目前,我遇到了一个问题,我的Web服务需要一个非常特定的格式化请求,但当我通过json发送请求时,会转储其额外添加\导致我的Web服务失败 下面是一个在python中键入一些代码的问题示例:Python 向变量添加额外\\的json.dumps问题,python,json,openstack,Python,Json,Openstack,我目前正在开发一个python客户机,与我正在开发的Web服务进行对话。目前,我遇到了一个问题,我的Web服务需要一个非常特定的格式化请求,但当我通过json发送请求时,会转储其额外添加\导致我的Web服务失败 下面是一个在python中键入一些代码的问题示例: >>> import json >>> body = {} >>> body['hosts'] = '["cso22"]' >>> print json.dumps
>>> import json
>>> body = {}
>>> body['hosts'] = '["cso22"]'
>>> print json.dumps(body)
{"hosts": "[\"CSO22\"]"}
因此,现在不是body['hosts']等于'[“CSO22”]”,而是等于'[\\\“CSO22\\”],这不是我的Web服务所期望的,因此它返回http错误400。是否有办法更改此行为,以便json.dumps将返回我需要的值?删除
'[“CSO22”]'
周围的单引号以创建数组:
body = {'hosts': ["CSO22"]}
删除
'[“CSO22”].
周围的单引号以创建数组:
body = {'hosts': ["CSO22"]}
如果这应该是一个包含1个元素的列表,字符串“CSO22”,则删除单引号
>>> body = {'hosts': ["CSO22"]}
>>> print json.dumps(body)
{"hosts": ["CSO22"]}
如果这应该是一个包含1个元素的列表,字符串“CSO22”,则删除单引号
>>> body = {'hosts': ["CSO22"]}
>>> print json.dumps(body)
{"hosts": ["CSO22"]}