Python

Cara Membaca dan Menulis File Json dengan Python

Cara Membaca dan Menulis File Json dengan Python
Artikel ini akan menjelaskan cara menangani file dan data JSON dalam bahasa pemrograman Python. Python hadir dengan modul "json" bawaan yang membuat penanganan data JSON menjadi mudah dan lugas.

Tentang JSON

JSON (JavaScript Object Notation) adalah format file dan standar penyimpanan data yang menggunakan pasangan nilai kunci untuk menyimpan dan bertukar data. Ini adalah format pertukaran data yang paling banyak digunakan, sering terlihat di RESTful API, database ringan, file konfigurasi, dan perangkat lunak offline atau online lainnya yang perlu menyimpan, mengambil, dan bertukar data. Sebagian besar bahasa pemrograman menyertakan pustaka untuk mengurai dan menulis data JSON secara default dan JSON adalah format data agnostik bahasa pemrograman. Nilai yang disimpan dalam file JSON atau muatan biasanya berisi string, angka, dan tipe data serial seperti daftar (array).

Kamus JSON dan Python

Data JSON dalam python diubah menjadi objek kamus dengan menggunakan metode "memuat". Sering terlihat bahwa beberapa orang menyamakan data json dan kamus python, karena sintaks untuk mendefinisikan keduanya hampir sama. Namun, data json tidak lain adalah string teks yang terstruktur dalam sintaksis yang kaku sementara kamus python adalah objek struktur data yang disimpan dalam memori. Jika Anda ingin menyimpan data kamus dalam file teks atau mengirimkannya ke program non-python lain, Anda harus terlebih dahulu mengubahnya menjadi string teks (byte). String teks yang dibuang / dikonversi ini didefinisikan dalam sintaks standar JSON dan proses mengubah kamus python menjadi string yang kompatibel dengan json disebut serialisasi.

Membaca dan Membuang Data JSON dengan Python

Data JSON dapat diambil sebagai respons dari server, dibaca dari file, diiris dari parameter kueri URL, dan sebagainya. Artikel ini terutama akan berfokus pada membaca data json dari file yang disimpan secara lokal. Mari kita asumsikan bahwa "tes".File json” berisi data berikut:

"codename": "Eoan Ermine", "version": "Ubuntu 19.10"

Untuk membaca tes.json file dengan python, Anda dapat menggunakan kode di bawah ini:

impor json
dengan terbuka ("test.json") sebagai f:
data = json.beban (f)
dump = json.dump (data)
cetak (data)
cetak (ketik (data))
cetak (buang)
cetak (ketik (buang))

Baris pertama dalam kode di atas mengimpor modul json. Di baris berikutnya, "dengan terbuka" digunakan untuk membaca konten file dengan aman. Di dalam blok "dengan terbuka", "json.load” digunakan untuk membaca dan menyimpan konten file dalam variabel “data”. Data yang dimuat pada langkah sebelumnya diubah kembali menjadi string json menggunakan perintah “json.membuang” metode. Menjalankan kode di atas akan menampilkan output berikut:

'codename': 'Eoan Ermine', 'version': 'Ubuntu 19.10'

"codename": "Eoan Ermine", "version": "Ubuntu 19.10"

Perhatikan pada output di atas bahwa "json.load" membaca data json mentah ke dalam kamus python sementara "json.dumps” mengubah kamus menjadi string yang kompatibel dengan struktur JSON. Setelah objek JSON diubah menjadi objek kamus python, Anda dapat menggunakan metode kamus python bawaan untuk menangani data. Contoh di atas cukup mendasar dan tidak menyertakan array dalam data JSON atau nilai bersarang. Namun di dalam python, Anda dapat menangani nilai-nilai ini seperti kamus dan daftar bersarang lainnya.

Menyortir dan Mencetak Data JSON dengan Cantik

“json.dump” mendukung beberapa parameter opsional untuk menyortir kunci dan mencetak output dengan cantik untuk meningkatkan keterbacaan.

impor json
dengan terbuka ("test.json") sebagai f:
data = json.beban (f)
dump = json.dumps(data, sort_keys=True, indent=4)
cetak (buang)

Kode di atas akan menampilkan output berikut:


"nama kode": "Eoan Ermine",
"versi": "Ubuntu 19.10"

Konversi Tipe Data

Daftar di bawah ini mengilustrasikan bagaimana nilai JSON diubah menjadi objek python dan sebaliknya.

JSON Python
tali str
jumlah int atau mengambang
benar salah Benar salah
batal Tidak ada
Himpunan daftar
obyek dikte

Json.Modul Baris Perintah alat

Python menyertakan utilitas baris perintah yang bagus “json.alat" yang dapat digunakan untuk memvalidasi dan mencetak string dan file JSON dengan cantik.

$ echo '"codename": "Eoan Ermine", "version": "Ubuntu 19.10"' | python3 -m json.alat

Menjalankan perintah di atas akan menampilkan output berikut:


"nama kode": "Eoan Ermine",
"versi": "Ubuntu 19.10"

Anda juga dapat menggunakan json.alat dengan file JSON. Ganti "in_file" dan "out_file" pada perintah di bawah ini dengan nilai yang Anda inginkan:

$ python3 -m json.alat in_file out_file

Selain mencetak cantik, menyortir dan memvalidasi data JSON, json.alat tidak melakukan hal lain. Jadi jika Anda ingin memanipulasi data JSON apa pun, Anda harus menulis kode kustom Anda sendiri menggunakan modul JSON bawaan.

Cara Mengembangkan Game di Linux
Satu dekade yang lalu, tidak banyak pengguna Linux yang memprediksi bahwa sistem operasi favorit mereka suatu hari nanti akan menjadi platform game po...
Port Sumber Terbuka dari Mesin Game Komersial
Rekreasi mesin game gratis, open source, dan lintas platform dapat digunakan untuk bermain lama serta beberapa judul game yang cukup baru. Artikel ini...
Game Baris Perintah Terbaik untuk Linux
Baris perintah bukan hanya sekutu terbesar Anda saat menggunakan Linux-ini juga dapat menjadi sumber hiburan karena Anda dapat menggunakannya untuk me...