Beispiele für die Verwendung des Python-JSON-Moduls

高洛峰
Freigeben: 2017-01-13 13:14:18
Original
1172 Leute haben es durchsucht

Tatsächlich ist JSON die String-Darstellung eines Python-Wörterbuchs, aber als komplexes Objekt kann das Wörterbuch nicht direkt übertragen werden, daher muss es in eine String-Form konvertiert werden 🎜>

Verwenden Sie json.dumps, um in das JSON-String-Format zu serialisieren

>>> import json
>>> dic {'Connection': ['keep-alive'], 'Host': ['127.0.0.1:5000'], 'Cache-Control': ['max-age=0']}
>>> jdict = json.dumps({'Connection': ['keep-alive'], 'Host': ['127.0.0.1:5000'], 'Cache-Control': ['max-age=0']})
>>> print jdict
{"Connection": ["keep-alive"], "Host": ["127.0.0.1:5000"], "Cache-Control": ["max-age=0"]}
Nach dem Login kopieren
Obwohl die von dic und jdict ausgegebenen Strings gleich sind, sind ihre tatsächlichen Typen unterschiedlich. dic ist ein Wörterbuchtyp und jdict ist Der String-Typ

<type &#39;dict&#39;>
>>> type(jdic)
>>> type(jdict)
<type &#39;str&#39;>
Nach dem Login kopieren
kann verwendet werden, um die Liste in das JSON-String-Format zu serialisieren

>>> list = [1, 4, 3, 2, 5] 
>>> jlist = json.dumps(list)
>>> print jlist
[1, 4, 3, 2, 5]
Nach dem Login kopieren
Listen- und Jlist-Typen sind ebenfalls unterschiedlich

>>> type(list)
<type &#39;list&#39;>
>>> type(jlist)
<type &#39;str&#39;>
Nach dem Login kopieren
json .dumps hat die folgenden Parameter:

json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding="utf-8", default=None, sort_keys=False, **kw)
Nach dem Login kopieren
Schlüsselsortierung

>>> print json.dumps({1:&#39;a&#39;, 4:&#39;b&#39;, 3:&#39;c&#39;, 2:&#39;d&#39;, 5:&#39;f&#39;},sort_keys=True)
{"1": "a", "2": "d", "3": "c", "4": "b", "5": "f"}
Nach dem Login kopieren
Formatausrichtung

>>> print json.dumps({&#39;4&#39;: 5, &#39;6&#39;: 7}, sort_keys=True, indent=4)
{
    "4": 5, 
    "6": 7
}
Nach dem Login kopieren
Trennzeichen angeben


>>> json.dumps([1,2,3,{&#39;4&#39;: 5, &#39;6&#39;: 7}], separators=(&#39;,&#39;,&#39;:&#39;))
&#39;[1,2,3,{"4":5,"6":7}]&#39;
Nach dem Login kopieren
Verwenden Sie json.dump, um in ein Dateiobjekt zu serialisieren

>>> json.dump({&#39;4&#39;: 5, &#39;6&#39;: 7}, open(&#39;savejson.txt&#39;, &#39;w&#39;))
>>> print open(&#39;savejson.txt&#39;).readlines()
[&#39;{"4": 5, "6": 7}&#39;]
Nach dem Login kopieren
json.dump-Parameter ähneln json.dumps

json.dump(obj, fp, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding="utf-8", default=None, sort_keys=False, **kw)
Nach dem Login kopieren
json.loads konvertiert JSON-Strings. Die Funktionssignatur für Die Deserialisierung in ein Python-Objekt

ist:

json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
Nach dem Login kopieren
Beachten Sie, dass das „s“ hier eine Zeichenfolge sein muss und nach der Deserialisierung ein Unicode-Zeichen sein wird

>>> dobj = json.loads(&#39;{"name":"aaa", "age":18}&#39;)
>>> type(dobj)
<type &#39;dict&#39;>
>>> print dobj
{u&#39;age&#39;: 18, u&#39;name&#39;: u&#39;aaa&#39;}
Nach dem Login kopieren
json.load wird aus der Datei in ein Python-Objekt deserialisiert.

Signatur lautet:

json.load(fp[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
Nach dem Login kopieren
Beispiel:

>>> fobj = json.load(open(&#39;savejson.txt&#39;))
>>> print fobj
{u&#39;4&#39;: 5, u&#39;6&#39;: 7}
>>> type(fobj)
<type &#39;dict&#39;>
Nach dem Login kopieren
Weitere Beispiele für die Verwendung von Python-JSON-Modulen Verwandte Artikel, bitte beachten Sie die chinesische PHP-Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage