Maison  >  Article  >  développement back-end  >  Exemples d'utilisation du module Python json

Exemples d'utilisation du module Python json

高洛峰
高洛峰original
2017-01-13 13:14:181155parcourir

En fait, JSON est la représentation sous forme de chaîne d'un dictionnaire Python, mais en tant qu'objet complexe, le dictionnaire ne peut pas être transféré directement, il doit donc être converti sous forme de chaîne. Le processus de conversion est également un processus de sérialisation. 🎜>

Utilisez json.dumps pour sérialiser au format de chaîne json

>>> 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"]}
Bien que les chaînes imprimées par dic et jdict soient les mêmes, leurs types réels sont différents dic est un type de dictionnaire et jdict. est de type String

<type &#39;dict&#39;>
>>> type(jdic)
>>> type(jdict)
<type &#39;str&#39;>
peut utiliser json.dumps pour sérialiser la liste au format de chaîne json

>>> list = [1, 4, 3, 2, 5] 
>>> jlist = json.dumps(list)
>>> print jlist
[1, 4, 3, 2, 5]
les types list et jlist sont également différents

>>> type(list)
<type &#39;list&#39;>
>>> type(jlist)
<type &#39;str&#39;>
json.dumps a les paramètres suivants :

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)
tri des clés

>>> 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"}
alignement du format

>>> print json.dumps({&#39;4&#39;: 5, &#39;6&#39;: 7}, sort_keys=True, indent=4)
{
    "4": 5, 
    "6": 7
}
spécifier le délimiteur


>>> 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;
Utilisez json.dump pour sérialiser en un objet fichier

>>> 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;]
Les paramètres json.dump sont similaires à 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 convertit les chaînes json Désérialiser en python object

La signature de la fonction est :

json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
Notez que le "s" ici doit être une chaîne, et ce sera un caractère Unicode après désérialisation

>>> 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 est désérialisé du fichier dans un objet python

la signature est :

json.load(fp[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
Exemple :

>>> 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;>
Plus d'exemples d'utilisation du module Python json Pour des informations connexes articles, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn