Es sieht aus wie der Python json
Modul JSON von RFC unterstützt 7159:
JSON (JavaScript Object Notation), spezifiziert durch RFC 7159 mit dem
Herumspielen (die RFC 4627 obsoletes) Validator Sie verbunden, "123" ist in 4627 ungültig, aber in 7159 gültig.
Vergleicht man die zwei RFCs, sieht es so aus, als ob die Definition dessen, was gültigen JSON-Text umfasst, breiter wird. In 4627:
JSON-text = object/array
Und in 7159:
JSON-text = ws value ws
(ws "optional Leerzeichen" bedeutet)
So ursprünglich Sie konnten nur habe ein o bject oder ein Array, aber jetzt können Sie einen Wert haben, der "ein Objekt, ein Array, eine Zahl oder ein String oder ein [...] Name ist: false null true".
Die json
Modul Dokumentation beschreibt die Differenz weiter:
die alte Version von JSON durch Löschen veralteter RFC 4627 erforderlich, dass die Top-Level-Wert eines JSON Text entweder ein JSON Objekt oder Array sein muss (Python dict oder list) und konnte kein JSON-Wert für null, boolean, number oder string sein. RFC 7159 hat diese Einschränkung entfernt, und dieses Modul hat diese Einschränkung weder in seinem Serializer noch in seinem Deserializer implementiert und nie implementiert.
whicg Python-Version? –
@ ItayMoav-Malimovka Python 2.7.12 – ichbinblau
@Kevin ja Python scheint RFC 7159 zu verwenden, daher ist dies richtig. https://docs.python.org/3/library/json.html –