我有一个看起来像这样的变量:
data = {"add_content": {"errata_ids": [advisory]},"content_view_version_environments": [{"content_view_version_id": version_id}]}
我需要为此变量添加单引号,即如果我将分配变量:
advisory
和version_id
并将单引号添加到数据变量中,如下所示:
data = '{"add_content": {"errata_ids": ["RHSA-2017:1390"]},"content_view_version_environments": [{"content_view_version_id": 160}]}'
我可以发布到API
我试图以各种方式添加单引号:
new_data = "'" + str(data) + "'"
>>> new_data
'\'{\'add_content\': {\'errata_ids\': [\'"RHSA-2017:1390"\']}, \'content_view_version_environments\': [{\'content_view_version_id\': \'160\'}]}\''
或使用:
'"%s"'%(data)
以及其他一些方法。
如何在打开{
之前和之后将{1}}之前和之后的单引号添加到数据变量?
答案 0 :(得分:3)
这正是JSON的作用:
import json
new_data = json.dumps(data)
答案 1 :(得分:0)
如果与之前的答案和评论相反,您没有尝试转换为json字符串,那么请在变量周围使用string.format:
data = {"add_content": {"errata_ids": '[{}]'.format(advisory)},"content_view_version_environments": [{"content_view_version_id": '{}'.format(version_id)}]}