Json. Stringify (Javascript) and Json. Dumps (Python) Not Equivalent on a List?
In Javascript: Var Myarray = [2, 3]; Var Json_Myarray = Json. Stringify(Myarray) // '[2,3]' but in Python: Mylist = [2, 3] Json_Mylist = Json. Dumps(Mylist) #...
In javascript:
var myarray = [2, 3];
var json_myarray = JSON.stringify(myarray) // '[2,3]'
But in Python:
mylist = [2, 3]
json_mylist = json.dumps(mylist) # '[2, 3]' <-- Note the space
So the 2 functions aren't equivalent. It's a bit unexpected for me and a bit problematic when trying to compare some data for example.
Some explanation about it?
1 Answer
The difference is that json.dumps applies some minor pretty-printing by default but JSON.stringify does not.
To remove all whitespace, like JSON.stringify, you need to specify the separators.
json_mylist = json.dumps(mylist, separators=(',', ':'))