ai didi

python - 使用 'u' 作为 json 加载 python 字符串

转载 作者:太空宇宙 更新时间:2023-11-04 00:56:48 24 4
gpt4 key购买 nike

我在下面的字符串中有一个字符串

json_string = '{u"favorited": false, u"contributors": null}'
json_string1 = '{"favorited": false, "contributors": null}'

以下 json 加载工作正常。

json.loads(json_string1 )

但是,下面的 json 加载给我值错误,如何解决这个问题?

json.loads(json_string)
ValueError: Expecting property name: line 1 column 2 (char 1)

最佳答案

我从客户那里收到的字符串也遇到了同样的问题。琴弦和你一起到了。我找到了一个使用 ast 包的解决方法:

import ast
import json

my_str='{u"favorited": false, u"contributors": null}'
my_str=my_str.replace('"',"'")
my_str=my_str.replace(': false',': False')
my_str=my_str.replace(': null',': None')
my_str = ast.literal_eval(my_str)
my_dumps=json.dumps(my_str)
my_json=json.loads(my_dumps)

请注意将“false”和“null”替换为“False”和“None”,因为 literal_eval 仅识别特定类型的 Python 文字结构。这意味着如果您可能需要在代码中进行更多替换 - 取决于您收到的字符串。

关于python - 使用 'u' 作为 json 加载 python 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34764979/

24 4 0
文章推荐: c - 在 if 或 while 条件下调用时 scanf 如何工作?
文章推荐: javascript - 单击更改颜色输入字段
文章推荐: javascript - Node.js 参数化路由 - 好还是坏的做法?
文章推荐: c - 如何旋转矩阵? C