Quelles sont les méthodes courantes du module Python json ?

PHPz
Libérer: 2023-04-25 08:10:09
avant
1051 Les gens l'ont consulté

JSON (JavaScript Object Notation) est un format d'échange de données léger qui suit la spécification JavaScript établie par l'European Computer Association (dénommée ECMAScript).

JSON est facile à lire et à écrire pour les gens, et il est également facile à analyser et à générer pour les machines. Il peut améliorer efficacement l'efficacité de la transmission des informations sur le réseau. Par conséquent, il est souvent utilisé comme langage standard pour transmettre des informations entre les réseaux. et les programmes, par exemple entre les clients et les serveurs. L'interaction des informations est fournie au format JSON.

En termes simples, JSON peut convertir un ensemble de données représenté par des objets JavaScript dans un format de chaîne pour faciliter la transmission de cette chaîne sur le réseau et entre les programmes. Et si nécessaire, il peut être converti dans un format de données pris en charge par le langage de programmation. Cette section présente principalement comment implémenter la conversion entre les données JSON et les types de données Python.

Le langage Python dispose d'un module intégré spécialisé dans le traitement des données JOSN - le module jons. Grâce à ce module, la conversion entre les formats de données JSON et Python peut être effectuée.

jons.loads()

Cette méthode peut convertir des chaînes au format json en objets Python (tels que des listes, des dictionnaires, des tuples, des entiers et des types à virgule flottante), dont le plus couramment utilisé est la conversion en types de dictionnaire. L'exemple est le suivant :

# coding:utf8
import json
#JOSN字符串
website_info='{"name" : "CSDN","PV" : "2000万","UV" : "800万","create_time" : "1999年"}'
py_dict=json.loads(website_info)
print("python字典数据格式:%s;数据类型:%s"% (py_dict,type(py_dict)))
Copier après la connexion

Résultat de sortie :

format de données du dictionnaire Python : {'name' : 'CSDN', 'PV' : '20 millions', 'UV' : '8 millions', 'create_time' : '1999 year'}; Type de données :

Remarque : La chaîne JSON dans l'exemple ci-dessus ressemble beaucoup au dictionnaire Python, mais son essence est différente. tandis que le dictionnaire Python est de type dict.

json.dump()

Il peut convertir des objets Python (dictionnaires, listes, etc.) en chaînes json et écrire les données converties dans des fichiers au format json, cette méthode doit donc fonctionner sur des objets de flux de fichiers. Par exemple, après avoir utilisé un programme d'exploration pour terminer la capture des données, il est parfois nécessaire de sauvegarder les données au format json. Dans ce cas, la méthode json.dump() est utilisée. Le format de syntaxe est le suivant :

json.dump(object,f,inden=0,ensure_ascii=False)
Copier après la connexion

Le. La description du paramètre est la suivante :

  • object : objets de données Python, tels que des dictionnaires, des listes, etc.

  • f : objet de flux de fichiers, c'est-à-dire un descripteur de fichier.

  • indent : formatez les données stockées pour faciliter la lecture des chaînes JSON.

  • ensure_ascii : s'il faut utiliser le codage ascii. Lorsque le chinois apparaît dans les données, il doit être défini sur False.

Un exemple est le suivant :

import json
ditc_info={"name" : "CSDN","PV" : "2000万","UV" : "800万","create_time" : "1999年"}
with open("web.josn","a") as f:
    json.dump(ditc_info,f,ensure_ascii=False)
Copier après la connexion

Ouvrez le fichier web.json, son contenu est le suivant :

{
"name": "CSDN",
"PV": "2000万",
"UV": "800万",
"create_time": "1999年"
}
Copier après la connexion

Vous pouvez également convertir la liste Python en chaîne JSON et l'enregistrer dans un fichier json comme suit :

import json
item_list = []
item = {'website': 'CSDN', 'url': "www.CSDN.net"}
for k,v in item.items():
    item_list.append(v)
with open('info_web.json', 'a') as f:
    json.dump(item_list, f, ensure_ascii=False)
Copier après la connexion

Ouvrez le fichier info_web.json, son contenu est le suivant :

["CSDN", "www.CSDN.net"]

json.load()

Cette méthode est utilisée pour faire fonctionner le fichier stream, mais il est différent de dump(), c'est tout le contraire, cela signifie lire une chaîne JSON à partir d'un fichier json et convertir le contenu lu en un objet Python. Les exemples d'utilisation sont les suivants :

import json
site = {'name':'CSDN',"url":"www.CSDN.net"}
filename = 'website.json'
with open (filename,'w') as f:
    json.dump(site,f,ensure_ascii=False)
with open (filename,'r') as f:
    print(json.load(f))
Copier après la connexion

Les résultats de sortie sont les suivants :

{'name' : 'CSDN', 'url' : 'www.CSDN.net'}

json.dumps()

Cette méthode peut convertir Python L'objet est converti en chaîne JSON. L'exemple est le suivant :

import json
#python字典
item = {'website': 'CSDN', 'rank': 1}
# json.dumps之后
item = json.dumps(item,ensure_ascii=False)
print('转换之后的数据类型为:',type(item))
print(item)
Copier après la connexion

Le résultat de sortie est le suivant :

Le type de données converties est :
{"website": "CSDN", "url": "www. CSDN.net"}

Enfin, un bref résumé des méthodes ci-dessus est donné, comme indiqué dans le tableau suivant :

Résumé de la méthode JSON

method Function
json.dumps() Convertissez les objets Python en chaînes JSON.
json.loads() Convertissez la chaîne JSON en objet Python.
json.dump() Convertissez des objets en Python en chaînes JSON et stockez-les dans des fichiers.
json.load() Convertissez la chaîne JSON du fichier en un objet Python et extrayez-la.

En résumé, json.load() et json.dump() opèrent sur des objets de flux de fichiers et réalisent les opérations de lecture et d'écriture de fichiers json, tandis que json.loads() et json.dumps() opèrent sur Is un objet Python ou une chaîne JOSN.

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!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal