Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiele für die Verwendung des Python-JSON-Moduls

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

高洛峰
高洛峰Original
2017-01-13 13:14:181100Durchsuche

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"]}
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;>
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]
Listen- und Jlist-Typen sind ebenfalls unterschiedlich

>>> type(list)
<type &#39;list&#39;>
>>> type(jlist)
<type &#39;str&#39;>
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)
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"}
Formatausrichtung

>>> print json.dumps({&#39;4&#39;: 5, &#39;6&#39;: 7}, sort_keys=True, indent=4)
{
    "4": 5, 
    "6": 7
}
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;
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;]
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)
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]]]]]]]])
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;}
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]]]]]]]])
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;>
Weitere Beispiele für die Verwendung von Python-JSON-Modulen Verwandte Artikel, bitte beachten Sie die chinesische PHP-Website!

Stellungnahme:
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