Python中JSON的转义双引号

2024-05-16 17:38:20 发布

您现在位置:Python中文网/ 问答频道 /正文

在Python中,如何用反斜杠和双引号替换双引号?

>>> s = 'my string with "double quotes" blablabla'
>>> s.replace('"', '\\"')
'my string with \\"double quotes\\" blablabla'
>>> s.replace('"', '\\\"')
'my string with \\"double quotes\\" blablabla'

我想得到以下信息:

'my string with \"double quotes\" blablabla'

Tags: 信息stringmywithreplacequotesdouble斜杠
3条回答

注意,可以通过执行json.dumps两次和json.loads两次来转义json数组/字典:

>>> a = {'x':1}
>>> b = json.dumps(json.dumps(a))
>>> b
'"{\\"x\\": 1}"'
>>> json.loads(json.loads(b))
{u'x': 1}
>>> s = 'my string with \\"double quotes\\" blablabla'
>>> s
'my string with \\"double quotes\\" blablabla'
>>> print s
my string with \"double quotes\" blablabla
>>> 

当您只要求's'时,它会为您转义\当您打印它时,您会看到字符串处于更“原始”的状态。所以现在。。。

>>> s = """my string with "double quotes" blablabla"""
'my string with "double quotes" blablabla'
>>> print s.replace('"', '\\"')
my string with \"double quotes\" blablabla
>>> 

您应该使用^{}模块。json.dumps(string)。它还可以序列化其他python数据类型。

import json

>>> s = 'my string with "double quotes" blablabla'

>>> json.dumps(s)
<<< '"my string with \\"double quotes\\" blablabla"'

相关问题 更多 >