0

なぜこれが正しいのですか:

  import json
  json.loads('{"A":2}')

しかし、これは間違っています:

  json.loads('{"A":2,}')

また

  json.loads("['A':2]")
4

2 に答える 2

3

JSON は JavaScript のサブセットです。これは、有効な JavaScript が有効な JSON であるとは限らないことを意味します。

  • {"A":2,}有効な JS (古い IE バージョンを除く) ですが、有効な JSON ではありません
  • ['A':2}中括弧が一致しないため、有効な JS でさえありません。"それらが一致した場合でも、JSON は常に使用し、文字列を決して'引用しないため、無効な JSON になります。

JSON の仕様については、http://json.org/を参照してください。

于 2012-04-30T00:15:13.307 に答える
1

最後の 2 つのオプションは有効なjsonではないため

  • 最後の要素の後にコンマがあってはなりません
  • a[は a ](配列) と一致し、a{は a }(オブジェクト)と一致する必要があります
于 2012-04-30T00:13:59.507 に答える