如何将此字符串转换为字典
我正在尝试 regex r"},\s\]"
,但没有得到想要的结果。
HTTP 请求正文
内容类型:文本/html
var sample = {
"date": "2022. 03. 23. 16:18",
"list":
[
{
"name": "USD",
"var1":"1236.26",
"var2":"1193.74",
"var3":"1226.90",
"var4":"1203.10",
"var5":"1215.00"
},
{
"name": "JPY",
"var1":"1020.81",
"var2":"985.71",
"var3":"1013.09",
"var4":"993.43",
"var5":"1003.26"
},
]
}
首先,我们需要去掉任何尾随逗号:
_sample = sample.replace("\n", "").replace(" ", "").replace(",]", "]")
您也可以为此使用正则表达式:
import re
_sample = re.sub(r",(\s)+]", "]", sample)
然后用于json.loads()
将其解析为字典。
import json
outcome = json.loads(_sample)
超越 OQ
如果我们也有可能在字典的最后一个键值之后有尾随逗号:例如{"var5": "1215.00",}
,您可以将上面的代码更新为:
_sample = sample.replace("\n", "").replace(" ", "").replace(",}", "}").replace(",]", "]")
或使用正则表达式:
regex = r"(,(\s)+]|,(\s)+})"
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句