从另一个列表中的值创建一个包含JSON数组的列表

时间:2017-06-26 04:52:35

标签: python json python-3.x

我有一个发送JSON帖子的python脚本。部分有效负载来自以下格式的列表

SERVICES = [{'id':'PZV8CL7', 'type':'service'}, {'id':'PYMOSPH', 'type':'service'}]

payload = {
    'maintenance_window': {
        'services': SERVICES,
    }

当手动将服务添加到脚本时,脚本工作正常,但是我需要它才能使用它们,所以我添加了这个:

code = ['PH6FKI0', 'PD1EK3Z', 'PSJR02A', 'PI8VRN1']
list = []

for c in code:
    list.append("{'id':'%s', 'type':'service'}" % s) 

print(list)
["{'id':'PH6FKI0', 'type':'service'}", "{'id':'PD1EK3Z', 'type':'service'}"

这里的问题是,在JSON帖子中发送引号时,引号似乎会产生干扰,并返回错误。

['Services must be an object containing properties id and type.']

如何在没有添加引号的情况下制作列表?任何其他方式来做这件事,也会很棒。

提前致谢

1 个答案:

答案 0 :(得分:0)

插入对象,而不是字符串:

for c in code:
    list.append({'id':s, 'type':'service'})