私はいくつかのUnicode文字列を含む辞書を持っています。このdictをJSONファイルとして保存し、AJAX経由でこの内容を表示したいと思います。 final_res
は辞書がある場合Python dictからJSONへのUnicode文字列の受け渡し
、私は通常これを行う:私はこれらがUnicodeエンコードされた文字であると想像
"l\\u00a0m\\u00fcdale"
:
json.dumps(final_res, ensure_ascii=True)
を結果では、私のような文字列を参照してください。しかし、Javascriptで表示しようとすると、エンコードされたUnicode文字ではなく、スラッシュが表示されます。
これを正しく表示するためにJavascriptで何か問題がありますか?または、JSONに出力する前に、これらをPythonのASCIIにデコードする必要がありますか?
UPDATE:@spectraと下のコメント欄での議論をもとに
、私はjson.dumps
はダブルスラッシュを出力すべきではないことに気づきました。これをブラウザで解析すると、リテラルの単一スラッシュとして出力されます。
私はjson
モジュールでこれを解決する方法を見つけようとしていますが、なぜ起こっているのかわかりません。
どのような結果をブラウザに送信するのに使用しますか? – spectras
'' \\ u00a0m \\ u00fcdale "' – user1496984
という文字列が表示されていますなぜあなたは 'ensure_ascii = True'を使用していますか?そして、Javascript側でJSONをどのように解析していますか?生のJSON文字列を表示するだけで、そこにUnicodeエスケープを取得できますが、JSONを実際に解析して使用する場合、エスケープはパーサによってUnicodeに処理される必要があります。 – user2357112