示例:
s = "[{"course_id": u"1", "course_name": u"Angular", "course_img": "sas"},
{"course_id": u"2", "course_name": u"SMAI", "course_img": "ASD"},
]"
我需要将其转换为普通的json字符串。如何实现这一目标?
答案 0 :(得分:1)
如果你有像这样的普通python列表
s = [{"course_id": u"1", "course_name": u"Angular", "course_img": "sas"},
{"course_id": u"2", "course_name": u"SMAI", "course_img": "ASD"},
]
然后你可以使用json
模块
import json
print json.dumps(s)
答案 1 :(得分:0)
你的示例不是有效的Python字符串,但我假设你拥有的是字典的“字符串化”形式:
d1 = [{"course_id": u"1", "course_name": u"Angular", "course_img": "sas"},
{"course_id": u"2", "course_name": u"SMAI", "course_img": "ASD"}]
s = str(D)
print(repr(s))
结果:
"[{'course_id': u'1', 'course_name': u'Angular', 'course_img': 'sas'}, {'course_id': u'2', 'course_name': u'SMAI', 'course_img': 'ASD'}]"
如果要将其转换为有效的json字符串,可以使用ast.literal_eval
获取原始字典,并使用json.dumps
正确序列化:
import ast
d2 = ast.literal_eval(s)
print(d1 == d2) # Did we get original dictionary?
import json
s2 = json.dumps(d2)
print(repr(s2))
结果:
True
'[{"course_id": "1", "course_name": "Angular", "course_img": "sas"}, {"course_id": "2", "course_name": "SMAI", "course_img": "ASD"}]'