Maison  >  Article  >  développement back-end  >  Comment utiliser le module Python JSON

Comment utiliser le module Python JSON

silencement
silencementoriginal
2019-06-24 11:29:072482parcourir

Comment utiliser le module Python JSON

JSON (JavaScript Object Notation, JS object tag) est un format d'échange de données léger. Le format de données de JSON est en fait le format de dictionnaire en python, qui peut contenir des tableaux entre crochets, qui sont des listes en python.

En python, il existe des modules qui gèrent spécifiquement le format json - les modules json et picle

Le module Json propose quatre méthodes : dumps, dump,loads,load

Le module pickle fournit également quatre fonctions : dumps, dump, charges, chargement

1 dumps et dump :

dumps et méthode de sérialisation des dumps

les dumps ne sont terminés que sérialisés en str, <.>

dump doit transmettre le descripteur de fichier et enregistrer la chaîne sérialisée dans le fichier

Afficher le code source :

def dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True,
        allow_nan=True, cls=None, indent=None, separators=None,
        default=None, sort_keys=False, **kw):
    # Serialize ``obj`` to a JSON formatted ``str``.
    # 序列号 “obj” 数据类型 转换为 JSON格式的字符串 
def dump(obj, fp, skipkeys=False, ensure_ascii=True, check_circular=True,
        allow_nan=True, cls=None, indent=None, separators=None,
        default=None, sort_keys=False, **kw):
    """Serialize ``obj`` as a JSON formatted stream to ``fp`` (a
    ``.write()``-supporting file-like object).

Exemple de code :

>>> import json
>>> json.dumps([])    # dumps可以格式化所有的基本数据类型为字符串
&#39;[]&#39;
>>> json.dumps(1)    # 数字
&#39;1&#39;
>>> json.dumps(&#39;1&#39;)   # 字符串
&#39;"1"&#39;
>>> dict = {"name":"Tom", "age":23}  
>>> json.dumps(dict)     # 字典
&#39;{"name": "Tom", "age": 23}&#39;
a = {"name":"Tom", "age":23}
with open("test.json", "w", encoding=&#39;utf-8&#39;) as f:
    # indent 超级好用,格式化保存字典,默认为None,小于0为零个空格
    f.write(json.dumps(a, indent=4))
    # json.dump(a,f,indent=4)   # 和上面的效果一样

2. charger

charge et charge la méthode de désérialisation

charge termine uniquement la désérialisation,

charge ne reçoit que les descripteurs de fichiers, termine la lecture des fichiers et la désérialisation

Afficher le code source :

def loads(s, encoding=None, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw):    """Deserialize ``s`` (a ``str`` instance containing a JSON document) to a Python object.
       将包含str类型的JSON文档反序列化为一个python对象"""
def load(fp, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw):    """Deserialize ``fp`` (a ``.read()``-supporting file-like object containing a JSON document) to a Python object.
        将一个包含JSON格式数据的可读文件饭序列化为一个python对象"""

Exemple :

>>> json.loads(&#39;{"name":"Tom", "age":23}&#39;)
{&#39;age&#39;: 23, &#39;name&#39;: &#39;Tom&#39;}
rrree

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en 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