有没有办法忽略 Python 中我的 json 字符串中的所有转义字符?

Is there a way to ignore all escape charcters inside my json string in Python?

提问人:Learner_77 提问时间:11/8/2023 最后编辑:OuroborusLearner_77 更新时间:11/8/2023 访问量:46

问:

我有下面的示例代码。我想将其转换为有效的python字典对象。

我不想使用,因为我希望动态处理所有转义字符。replace()

示例代码:

import json
data = '{"descr": "BETNESOL N E\EYE DROP 1X5ML"}'
data_dump = json.dumps(data)
result = json.loads(data_dump ,strict=False)
print(result, type(result))

我希望我的最终结果输出类型为 。dict

我尝试过的事情:

  • 用于对其进行编码,但在解码时使用 ,它不会给我 json 类型。json.dumpsjson.loadsdict
  • 尝试将 json 字符串转换为原始字符串,但它也没有给我 json 类型的 jsondict
  • 使用外部库调用但不起作用。escapejson

目前在 Ubuntu 操作系统上使用 python 3.8.0。我刚刚开始学习python语言。

如何改进此代码块?

json python-3.x 数据转换

评论

0赞 Goku - stands with Palestine 11/8/2023
您的最终输出类型是什么?{'descr': 'BETNESOL N E\\EYE DROP 1X5ML'}dict
1赞 Ouroborus 11/8/2023
你把json函数用错了。用于将 json 编码的字符串转换为 python 对象。至于转义,json 规范只允许某些转义组合,你不能随意转义不需要转义的东西。因此,您开头的字符串不是有效的 json 编码字符串。json.loads
0赞 Learner_77 11/8/2023
最终输出应为类型为 'dict' 的 {'descr': 'BETNESOL N E\EYE DROP 1X5ML'}
0赞 MisterMiyagi 11/8/2023
通过 JSON 存储并加载字符串,因此必须获取字符串。此字符串包含另一个级别的 JSON 不会对此进行任何更改。你为什么希望从中得到一个字典?为什么不从初始字符串加载而不额外转储它?
1赞 Ouroborus 11/8/2023
因为它不是有效的 json。其中的反斜杠是一个转义字符,但你只能转义某些事情。

答: 暂无答案