当前位置: 首页 > 知识库问答 >
问题:

Python JSON加载/转储破坏Unicode?[重复]

锺离珂
2023-03-14

将包含unicode字符的字符串转储为json会产生奇怪的unicode转义序列:

text = "⌂⚘いの法嫁"
print(text) # output: ⌂⚘いの法嫁

import json
json_text = json.dumps(text)
print(json_text) # output: "\u2302\u2698\u3044\u306e\u6cd5\u5ac1"

我想得到这个输出:

"⌂⚘いの法嫁"

如何将unicode字符转储为字符而不是转义序列?

共有1个答案

任繁
2023-03-14

使用< code >确保_ascii=False调用< code>json.dumps:

json_string = json.dumps(json_dict, ensure_ascii=False)

在Python 2中,返回值将是< code>unicode而不是< code>str,所以在对它进行任何操作之前,您可能需要对它进行< code >编码。

 类似资料:
  • 使用这个延迟加载代码,我的lightbox中断:单击一个图像显示lightbox,但没有图像。 通过检查inspector,我可以看到lightbox img标签没有值。我猜在延迟加载将属性和值分配给图像之前,lightbox会检查src。 如何解决此问题?

  • 我在看这个问题:python3用单反斜杠代替双反斜杠[duplicate] 并筛选出对类似问题的回答:Python 将 \ 替换为 \ ,为什么 Python 的原始字符串文本不能以单个反斜杠结尾?,如何在python中取消scapeunicode转义字符串? 当我意识到没有一个答案真正解决这个问题时。假设我有一个损坏的unicode字符串,它包含转义反斜杠和转义字符: 当我打印它时,一些字符评估

  • 问题内容: 我想将列名修改为表中存在的新名称 但这里的问题我想手动修改或中的礼物。 有没有更好的方法可以做到这一点。 要一列正在使用此 我同样如何为做到这一点还是?没有打开每个脚本? 问题答案: 好吧,有很多第三方工具都承诺使用这种类型的“安全重命名”工具,其中一些是免费的,而有些则不是: MWillemse在回答中写道,ApexSQL为此提供了一个免费工具 RedGate有一个称为SQLProm

  • 问题内容: 我知道Go中没有析构函数,因为从技术上讲没有类。这样,我用来执行与构造函数相同的功能。但是,有没有办法在终止的情况下创建某些东西来模仿析构函数,例如使用关闭文件?现在,我只是打电话给我,但这有点荒唐,我认为设计很差。正确的方法是什么? 问题答案: 在Go生态系统中,存在一种处理包装了宝贵(和/或外部)资源的对象的惯用语:一种专门用于释放该资源的特殊方法,通常通过该机制进行 显式 调用。

  • 我在分布式环境(“微服务”)中使用Protobuf 3和gRPC。 由于缺乏支持的未设置/缺失的值在原型3我得到了以下问题有关的合同可加性。 假设我有服务A和两个由团队B和团队C拥有的消费者服务B和C。 如果我将一个字段(比如布尔值)添加到服务a的契约中,首先它将具有默认值,该值将按原样写入数据库。 然后,B队使用更新后的合约更新服务进行对话,并将“true”作为字段值传递。然后,C队仍然使用旧合

  • 编辑1: 我目前从一个Main类调用它,如下所示: } 原文: 解释后代码如下: 我有一个带有JavaConfig的Spring应用程序,称之为主应用程序,它从库中导入另一个Spring JavaConfig类。这个导入的JavaConfig应该用一个方面包装在主应用程序中创建的任何数据源,这个方面有一个自动连接的LogDelegator。 只要主应用程序只包含一个数据源,一切都正常。但是,当我向