python - 如何将带有反斜杠的字符串转换为json

标签 python json

如何转换此字符串 u'{\'name\': "User", \'valid\': False}'使用 .loads() 到 json .

我得到一个

*** ValueError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)

而且我不想使用.eval()ast_literals() .

最佳答案

看起来不像一个有效的 JSON - 应该使用双引号字符串而不是单引号字符串,并且应该使用 false 而不是 Falseast.literal_eval()会按原样处理它,但如果您想使用 json.loads() 您必须在加载之前修复它,对于此示例输入:

>>> import json
>>>
>>> s = u'{\'name\': "User", \'valid\': False}'
>>> s = s.replace("\'", '"').replace("False", "false")
>>> json.loads(s)
{u'valid': False, u'name': u'User'}

请注意,这并不真正可靠。

关于python - 如何将带有反斜杠的字符串转换为json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34682807/

相关文章:

javascript - 获取JSON数据,放入HTML标签

python - 从向量化的二维数组中获取值

python - python中的字符串相等

python - python 中的 "variable, variable ="语法?

python - 如何搜索 Flask SQLAlchemy 多对多关系的表?

python - gspread 错误 : SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] in python

javascript - 以对象作为成员发布json请求对象

json - 使用 Swift 和 PromiseKit 链接 Alamofire 请求

java - JAX-RS - 没有根节点的 JSON

javascript - json 选择一个名为 "item"的项目