【发布时间】:2020-01-24 09:45:33
【问题描述】:
我有一个如下所示的 json。当我验证 json 时,我收到一个错误“无效的 Json”,因为我只有一个单引号,而且还有 u,我不知道它为什么在那里。
{u'domain': u'127.0.0.1', u'user_id': u'example.com', u'sender': u'shop_1'}
上面的 Json 无效。如何使 json 出现双引号,并从响应中删除 u 以获得有效的 json。
PS:Python 初学者
【问题讨论】:
-
你如何创建那个 json?
-
如果您展示的是您的 json 文件,只需将
u'和'替换为"s。您可以在您选择的文本编辑器中执行此操作,甚至可以在 python 中执行此操作,在加载之前,运行text.replace("u'", '"').replace("'", '"') -
这是一个 Python 对象(保存为字符串?!),它不是有效的 JSON。
-
json.dumps() 返回 python dict 的 JSON 字符串表示。 docs.python.org/2/library/json.html#json.dumps
-
顺便说一句,你还在用 Python2;你应该切换到 Python3,它已经存在了十年或更长时间。字符串文字前面的
u将其标记为 unicode 字符串(在 Python3 中这是普通字符串,但在 Python2 中不是)。