web-dev-qa-db-ja.com

JSON.stringify(Javascript)とjson.dumps(Python)はリスト上で同等ではありませんか?

Javascriptの場合:

var myarray = [2, 3];
var json_myarray = JSON.stringify(myarray) // '[2,3]'

しかし、Pythonでは:

mylist = [2, 3]
json_mylist = json.dumps(mylist) # '[2, 3]' <-- Note the space

したがって、2つの関数は同等ではありません。私にとっては予想外のことであり、たとえば、いくつかのデータを比較しようとすると少し問題があります。

それについての説明はありますか?

15
ThePhi

違いは、json.dumpsはデフォルトでいくつかのマイナープリティプリンティングを適用しますが、JSON.stringifyは適用しません。

JSON.stringifyなどのすべての空白を削除するには、 セパレータを指定 する必要があります。

json_mylist = json.dumps(mylist, separators=(',', ':'))
24
Mike Cluck