Cara menukar kamus ke JSON di python

How Convert Dictionary Json Python



JSON (Notasi Objek JavaScript) adalah format fail yang popular untuk menyajikan data berstruktur dan memindahkan data antara pelayan dan aplikasi dengan mudah. Struktur fail ini serupa dengan beberapa objek Python seperti senarai, tuple, dan kamus. Anda boleh menukar objek kamus menjadi JSON objek dengan menggunakan pembuangan() dan lambakan () kaedah si json modul. Artikel ini menunjukkan cara-cara untuk menukar objek kamus ke objek JSON di python.

kaedah json.dumps ():

Kaedah ini digunakan untuk menukar objek kamus menjadi data JSON untuk menghurai atau membaca dan lebih lambat daripada pembuangan() kaedah.







Sintaks:



json.pembuangan sampah(objek,inden=Tiada,urutkan_kunci=Salah)

Kaedah ini mempunyai banyak argumen pilihan. Penggunaan satu argumen wajib dan dua pilihan ditunjukkan dalam artikel ini. Di sini, argumen pertama adalah argumen wajib yang digunakan untuk mengambil objek kamus, argumen kedua digunakan untuk menentukan bilangan unit untuk lekukan dan argumen ketiga digunakan untuk menyusun kunci.



kaedah json.dump ():

Kaedah ini digunakan untuk menyimpan objek python ke dalam fail JSON. Ia lebih pantas daripada lambakan () kaedah kerana menulis dalam memori dan fail secara berasingan.





Sintaks:

json.pembuangan(kamus,fileHandler,inden=Tiada)

Kaedah ini mempunyai banyak hujah seperti lambakan () . Kegunaan tiga argumen digunakan dalam artikel ini untuk mengubah data objek kamus menjadi data JSON dan menyimpan data menjadi file JSON. Di sini, argumen pertama digunakan untuk mengambil objek kamus yang perlu ditukar menjadi objek JSON, dan argumen kedua digunakan untuk mengambil nama pengendali fail di mana data JSON akan ditulis. Argumen ketiga digunakan untuk menetapkan unit lekukan.



Bagaimana kedua kaedah ini dapat digunakan untuk menukar objek kamus menjadi fail JSON atau rentetan JSON ditunjukkan di bawah artikel ini.

Contoh-1: Tukar kamus menjadi JSON menggunakan lambakan () dengan lekukan

Telah disebutkan sebelumnya bahawa metode dumps () memiliki satu parameter wajib dan dapat mengambil objek kamus untuk mengubah data menjadi string JSON. Dalam skrip berikut, dikte_data adalah pemboleh ubah kamus yang mengandungi data rekod pelajar tertentu. Pada mulanya, tempat pembuangan () kaedah digunakan dengan satu argumen dan nilai dikte_data ditukar menjadi data JSON. Keluaran kedua kamus dan format JSON adalah sama jika tidak ada lekukan yang digunakan dalam data JSON. Seterusnya, tempat pembuangan () kaedah digunakan dengan dua argumen, dan 3 digunakan sebagai nilai lekukan untuk data JSON. Output JSON kedua akan dihasilkan dengan lekukan.

#! / usr / bin / env python3
# Import modul json
mengimportjson

# Tentukan kamus
dikte_data= { 'ID pelajar':'011894', 'nama':'Matius', 'kumpulan':30, 'semester':6 }
# Cetak data kamus
mencetak('Keluaran Diktonari: n',dikte_data, ' n')

# Tukar kamus menjadi objek json tanpa lekukan
json_data=json.pembuangan sampah(dikte_data)
# mencetak data json
mencetak('Output JSON tanpa lekukan: n',json_data, ' n')

# Tukar kamus menjadi objek json dengan lekukan
json_data=json.pembuangan sampah(dikte_data,inden=3)
# mencetak data json dengan lekukan
mencetak('Output JSON dengan lekukan: n',json_data)

Pengeluaran:

Output berikut akan muncul setelah menjalankan skrip.

Contoh-2: Tukar kamus menjadi JSON menggunakan lambakan () dengan sort_keys

Kekunci data JSON dapat disusun dengan menggunakan urutkan_kunci hujah lambakan (). Nilai lalai dari argumen ini adalah Salah. Dalam skrip berikut, objek kamus ditukar menjadi data JSON tanpa menggunakan urutkan_kunci dan menggunakan urutkan_kunci untuk memaparkan penggunaan hujah ini. Kaedah dump pertama () digunakan dengan nilai inden 5 dan Output menunjukkan data JSON menggunakan lekukan 5. Dalam kaedah dump kedua (), sort_keys digunakan dan ditetapkan ke True untuk menyusun nilai kunci. Output JSON terakhir akan menunjukkan data setelah menyusun nilai utama.

#! / usr / bin / env python3
# Import modul json
mengimportjson

# Tentukan kamus
dikte_data= {'nama':'Madison','Bulan':'Mungkin','tahun':2020,'jualan':[1000, 2100, 3500, 1200]}
# Cetak data kamus
mencetak('Keluaran Diktonari: n',dikte_data, ' n')

# Tukar kamus dengan data senarai menjadi json
json_data=json.pembuangan sampah(dikte_data,inden= 5)
# mencetak data json
mencetak('Output JSON dengan lekukan: n',json_data)

# Tukar kamus dengan data senarai menjadi json dengan mengisih kunci
json_data=json.pembuangan sampah(dikte_data,inden= 5,urutkan_kunci= Betul)
# mencetak data json yang disusun berdasarkan kekunci
mencetak('Output JSON yang disusun dengan lekukan: n',json_data)

Pengeluaran:

Output berikut akan muncul setelah menjalankan skrip. Output JSON pertama menunjukkan nilai-nilai kunci seperti yang ditentukan dalam kamus dan output JSON kedua menunjukkan nilai-nilai kunci dalam urutan yang disusun.

Contoh-3: Tukar kamus menjadi data JSON dan simpan menjadi fail JSON

Sekiranya anda ingin menyimpan data JSON ke dalam fail setelah menukar dari kamus maka anda harus menggunakan tempat pembuangan () kaedah. Bagaimana anda boleh menukar objek kamus menjadi data JSON dan menyimpan data dalam fail JSON ditunjukkan dalam contoh ini. Di sini, pembuangan() kaedah menggunakan tiga hujah. Argumen pertama mengambil objek kamus yang ditakrifkan sebelumnya. Argumen kedua mengambil pemboleh ubah pengendali fail yang juga ditentukan sebelumnya untuk membuat fail JSON. Hujah ketiga menentukan nilai lekukan. Kandungan JSON yang baru ditulis akan dicetak kemudian sebagai output.

#! / usr / bin / env python3
# Import modul json
mengimportjson

# Tentukan kamus
dikte_data= { 'c-101':'Pengaturcaraan PHP', 'c-102':'Pengaturcaraan Bash', 'c-103':
'Pengaturcaraan Python',
'c-104':'Pengaturcaraan Berorientasikan Objek' }
# Cetak data kamus
mencetak('Keluaran Diktonari: n',dikte_data, ' n')

# Tetapkan nama fail json
jsonFile= 'course_list.json'
# Buka fail json untuk menulis data json
dengan buka(jsonFile, 'dalam') sebagaifileHandler1:
json.pembuangan(dikte_data,failHandler1,inden= 2)

# Buka fail json untuk membaca
failHandler2= buka(jsonFile)
mencetak('Kandungan fail JSON: n',failHandler2.membaca())

Pengeluaran:

Output berikut akan muncul setelah menjalankan skrip.

Kesimpulan:

Diperlukan untuk menyembunyikan data kamus ke dalam data JSON untuk membuat pelbagai tugas pengaturcaraan lebih mudah. Penukaran data ini penting kerana data dapat dipindahkan dari satu skrip ke skrip yang lain dengan mudah dengan menggunakan JSON. Saya harap, tutorial ini dapat membantu pengguna python untuk mengetahui cara-cara menukar data kamus menjadi data JSON dan menerapkannya dengan betul dalam skrip mereka.