임 프로그래밍 django 및 문자열 개체를 serialize 할 필요가 있지만 문자열을 가져올 필요가/serialize 된.Simplejson 덤프 char
예 :
simplejson.dumps ({ 'ID': '루트/잎'})
내가 필요 같은 출력 :
'{ "ID": "루트/잎 "} '
하지만 난이 얻을 :
'{"ID ":"루트 \\\\ 잎 "} '
보다 너!
PD : 내 영어 - P
임 프로그래밍 django 및 문자열 개체를 serialize 할 필요가 있지만 문자열을 가져올 필요가/serialize 된.Simplejson 덤프 char
예 :
simplejson.dumps ({ 'ID': '루트/잎'})
내가 필요 같은 출력 :
'{ "ID": "루트/잎 "} '
하지만 난이 얻을 :
'{"ID ":"루트 \\\\ 잎 "} '
보다 너!
PD : 내 영어 - P
JSON 죄송는 문자 \
문자를 탈출하고, \\
로 표현해야합니다. 파이썬은 \
문자가 이스케이프 된 문자로 \\
을 나타냅니다. 둘 사이에 \
이 \\\\
이됩니다.
주의 파이썬에서 다음
>>> "\\/" == "\/"
True
>>> {"id": "root\/leaf"} == {"id": "root\\/leaf"}
True
>>> {"id": "root\\/leaf"}["id"]
'root\\/leaf'
>>> print {"id": "root\\/leaf"}["id"]
root\/leaf
파이썬은 여분의 탈출을 인쇄한다. 따라서 simplejson.dumps({"id": "root\/leaf"})
을 수행하면 파이썬은 올바른 결과 인 {'id': 'root\\/leaf'}
을 인쇄하지만 여분의 파이썬 이스케이프는 따라서 {'id': 'root\\\\/leaf'}
이됩니다. 파이썬은 각각 \\
을 단일 문자로 간주합니다. 문자열 대신 파일에 쓰면 {'id': 'root\\/leaf'}
이 표시됩니다.
편집 : 나는 추가 할 수 있습니다, 문자 그대로의 JSON {"id": "root\/leaf"}
리터럴 JSON으로, {'id': 'root/leaf'}
에 /
문자 \/
지도를 해독한다. \/
및 /
은 모두 유효한 JSON 인코딩 인 /
입니다. simplejson을 /
대신 \/
대신 /
을 인코딩하는 쉬운 방법으로 보이지 않습니다.