Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Apakah kaedah biasa modul json Python?

Apakah kaedah biasa modul json Python?

PHPz
PHPzke hadapan
2023-04-25 08:10:09985semak imbas

JSON (JavaScript Object Notation) ialah format pertukaran data ringan yang mengikut spesifikasi JavaScript yang ditetapkan oleh Persatuan Komputer Eropah (dirujuk sebagai ECMAScript).

JSON adalah mudah untuk orang membaca dan menulis, dan ia juga mudah untuk mesin menghuraikan dan menjana dengan berkesan boleh meningkatkan kecekapan penghantaran maklumat rangkaian menghantar maklumat antara rangkaian dan program, seperti pelanggan Interaksi maklumat dengan pelayan dihantar dalam format JSON.

Ringkasnya, JSON boleh menukar set data yang diwakili oleh objek JavaScript ke dalam format rentetan supaya rentetan ini boleh dihantar melalui rangkaian dan antara program. Dan apabila diperlukan, ia boleh ditukar kepada format data yang disokong oleh bahasa pengaturcaraan. Bahagian ini terutamanya memperkenalkan cara melaksanakan penukaran antara data JSON dan jenis data Python.

Bahasa Python mempunyai modul terbina dalam yang mengkhusus dalam memproses data JOSN - modul jons Melalui modul ini, penukaran antara format data JSON dan Python boleh diselesaikan.

jons.loads()

Kaedah ini boleh menukar rentetan format json kepada objek Python (seperti senarai, kamus, tupel, integer dan jenis titik terapung), yang paling biasa digunakan ialah ditukar kepada jenis kamus. Contohnya adalah seperti berikut:

# 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)))

Hasil output:

format data kamus python: {'name': 'CSDN', 'PV': '20 million', 'UV' : '8 juta', 'create_time': '1999'}; kepada kamus Python Serupa, tetapi pada asasnya berbeza, JOSN ialah jenis rentetan, manakala kamus Python ialah jenis dict.

json.dump()

Ia boleh menukar objek Python (kamus, senarai, dll.) ke dalam rentetan json dan menulis data yang ditukar kepada fail format json, jadi Kaedah ini mesti beroperasi pada objek aliran fail. Sebagai contoh, selepas menggunakan program perangkak untuk melengkapkan penangkapan data, kadangkala perlu menyimpan data dalam format json Dalam kes ini, kaedah json.dump() digunakan seperti berikut:

Penerangan parameter adalah seperti berikut:

json.dump(object,f,inden=0,ensure_ascii=False)

objek: Objek data Python, seperti kamus, senarai, dll.
  • f: Objek aliran fail, iaitu pemegang fail.
  • inden: Formatkan data yang disimpan untuk menjadikan rentetan JSON lebih mudah dibaca.
  • ensure_ascii: Sama ada hendak menggunakan pengekodan ascii Apabila bahasa Cina muncul dalam data, ia perlu ditetapkan kepada False.
  • Contohnya adalah seperti berikut:

Buka fail web.json, kandungannya seperti berikut:

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)

Anda boleh juga meletakkan Senarai Python ditukar menjadi rentetan JSON dan disimpan ke fail json, seperti yang ditunjukkan di bawah:

{
"name": "CSDN",
"PV": "2000万",
"UV": "800万",
"create_time": "1999年"
}

Buka fail info_web.json, kandungannya adalah seperti berikut:

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)

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

json.load()

Kaedah ini digunakan untuk mengendalikan objek aliran fail, tetapi ia adalah hanya bertentangan dengan dump(), ia bermakna Membaca rentetan JSON daripada fail json dan menukar kandungan yang dibaca kepada objek Python. Contoh penggunaan adalah seperti berikut:

Hasil output adalah seperti berikut:

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))

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

json.dumps()

Kaedah ini boleh menukar objek Python kepada rentetan JSON. Contohnya adalah seperti berikut:

Hasil output adalah seperti berikut:

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

Jenis data yang ditukar ialah: 3a628129c34d878453c4dde2ff442b59

{" website": "CSDN ", "url": "www.CSDN.net"}


Akhir sekali, ringkasan ringkas kaedah di atas diberikan, seperti ditunjukkan dalam jadual berikut:

Ringkasan kaedah JSON

Ringkasnya, json.load() dan json.dump() beroperasi pada objek aliran fail dan merealisasikan operasi membaca dan menulis fail json, manakala json.loads( ) dan json.dumps() beroperasi pada Adakah objek Python atau rentetan JOSN.

Atas ialah kandungan terperinci Apakah kaedah biasa modul json Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam