JSON.stringify(Javascript)和json.dumps(Python)在列表中不相同?

The*_*Phi 18 javascript python json

在javascript中:

var myarray = [2, 3];
var json_myarray = JSON.stringify(myarray) // '[2,3]'
Run Code Online (Sandbox Code Playgroud)

但是在Python中:

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

所以这两个功能并不相同.这对我来说有点意外,并且在尝试比较一些数据时有点问题.

关于它的一些解释?

Mik*_*uck 26

不同之处在于json.dumps默认情况下会应用一些次要的漂亮打印但JSON.stringify不会.

要删除所有空格,例如JSON.stringify,您需要指定分隔符.

json_mylist = json.dumps(mylist, separators=(',', ':'))
Run Code Online (Sandbox Code Playgroud)

  • 它可能仅适用于简单数组。内部包含对象的数组仍然会产生不同的校验和,因此它们不同(它们有额外的字符)。 (2认同)