Beispiel Ein Python-Skript gibt einen Booleschen Wert zurück, wenn eine Zeichenfolge gültig ist. Json:
import json
def is_json(myjson):
try:
json_object = json.loads(myjson)
except ValueError as e:
return False
return True
Welche Drucke:
print is_json("{}") #prints True
print is_json("{asdf}") #prints False
print is_json('{ "age":100}') #prints True
print is_json("{'age':100 }") #prints False
print is_json("{\"age\":100 }") #prints True
print is_json('{"age":100 }') #prints True
print is_json('{"foo":[5,6.8],"foo":"bar"}') #prints True
Konvertieren Sie eine JSON-Zeichenfolge in ein Python-Wörterbuch:
import json
mydict = json.loads('{"foo":"bar"}')
print(mydict['foo']) #prints bar
mylist = json.loads("[5,6,7]")
print(mylist)
[5, 6, 7]
Konvertieren Sie ein Python-Objekt in eine JSON-Zeichenfolge:
foo = {}
foo['gummy'] = 'bear'
print(json.dumps(foo)) #prints {"gummy": "bear"}
Wenn Sie auf Parsing auf niedriger Ebene zugreifen möchten, rollen Sie keine eigene, sondern verwenden Sie eine vorhandene Bibliothek: http://www.json.org/
Tolles Tutorial zum Python JSON-Modul: https://pymotw.com/2/json/
Ist String JSON und zeigt Syntaxfehler und Fehlermeldungen:
sudo cpan JSON::XS
echo '{"foo":[5,6.8],"foo":"bar" bar}' > myjson.json
json_xs -t none < myjson.json
Drucke:
, or } expected while parsing object/hash, at character offset 28 (before "bar}
at /usr/local/bin/json_xs line 183, <STDIN> line 1.
json_xs
ist in der Lage, Syntax zu überprüfen, zu analysieren, zu analysieren, zu codieren, zu decodieren und vieles mehr:
https://metacpan.org/pod/json_xs