[英]Escape double quotes when converting a dict to json in Python
在Python中將字典轉換為json時,我需要轉義雙引號,但我一直在努力尋找方法。
因此,如果我有一個類似{'foo': 'bar'}
的字典,我想將其轉換為json並轉義雙引號-因此它看起來像:
'{\\"foo\\":\\"bar\\"}'
json.dumps
不會執行此操作,而我嘗試了以下操作:
json.dumps({'foo': 'bar'}).replace('"', '\\\\"')
最終格式如下:
'{\\\\"foo\\\\": \\\\"bar\\\\"}'
這似乎是一個很簡單的問題,但我真的很努力。
您最后一次嘗試json.dumps({'foo': 'bar'}).replace('"', '\\\\"')
實際上符合您的想法。
您看到此信息的原因:
'{\\"foo\\": \\"bar\\"}'
是因為您正在打印字符串的表示形式。 字符串本身每個引號都只有一個反斜杠。 如果對該結果使用print()
,則會看到一個反斜杠
您所擁有的有效。 Python向您展示了它的字面表示。 如果將其保存到變量中並打印出來,它將顯示您要查找的內容。
>>> a = json.dumps({'foo': 'bar'}).replace('"', '\\"')
>>> print a
{\"foo\": \"bar\"}
>>> a
'{\\"foo\\": \\"bar\\"}'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.