我正在尝试使用 simplejson.dumps 将 Python 数组编码为 json:
In [30]: s1 = ['test', '<script>']
In [31]: simplejson.dumps(s1)
Out[31]: '["test", "<script>"]'
工作正常。
但我想在调用 simplejson.dumps 之前先转义字符串(使用 Django 中的 escapejs):
In [35]: s_esc
Out[35]: [u'test', u'\\u003Cscript\\u003E']
In [36]: print simplejson.dumps(s_esc)
["test", "\\u003Cscript\\u003E"]
我的问题是:我希望转义的字符串是:["test", "\u003Cscript\u003E"]
而不是["test", "\\u003Cscript\\u003E"]
我可以使用replace
:
In [37]: print simplejson.dumps(s_esc).replace('\\\\', '\\')
["test", "\u003Cscript\u003E"]
但这是一个好方法吗?我只想先转义字符串,然后再将它们编码为 json。所以当我在模板中使用它们时不会出现语法错误。
谢谢。:)