Python

Cara mencari data di JSON menggunakan python

Cara mencari data di JSON menggunakan python

Salah satu teknik serialisasi data yang paling banyak digunakan adalah format JSON. Python memiliki modul JSON bawaan untuk bekerja dengan data JSON. Ini mendukung semua jenis tipe data primitif seperti angka, string, dll, bersama dengan objek python. Data disimpan dalam format terstruktur di JSON. Terkadang diperlukan untuk mencari data tertentu dari string JSON besar atau file JSON. Ada banyak cara untuk mencari data tertentu dari data JSON. Bagaimana data JSON dapat dicari berdasarkan kunci atau nilai menggunakan skrip python ditampilkan dalam artikel ini.

Contoh-1: Cari kunci dalam data JSON sederhana

Skrip berikut menunjukkan cara mencari apakah ada kunci tertentu dalam string JSON atau tidak:. Di sini, variabel bernama data pelanggan didefinisikan untuk menyimpan data JSON. Nilai kunci akan diambil sebagai input dari pengguna. load() metode modul JSON digunakan untuk memuat data JSON dalam variabel bernama pelanggan. Lanjut, 'di' operator digunakan untuk mencari kunci.

#!/usr/bin/env python3
# Impor modul json
impor json
# Tentukan data json
data pelanggan ="""
"id": "3425678",
"nama": "John Michael",
"email": "[email dilindungi]",
"tipe": "biasa",
"alamat": "4258 Poplar Chase Lane, Boise, Idaho."
"""
# Masukkan nilai kunci yang ingin Anda cari
keyVal = input("Masukkan nilai kunci: \n")
# memuat data json
pelanggan = json.beban (data pelanggan)
# Cari nilai kunci menggunakan operator 'dalam'
jika keyVal di pelanggan:
# Cetak pesan sukses dan nilai kuncinya
print("%s ditemukan dalam data JSON" %keyVal)
print("Nilai dari", keyVal,"adalah", pelanggan[keyVal])
lain:
# Cetak pesan jika nilainya tidak ada
print("%s tidak ditemukan dalam data JSON" %keyVal)

Keluaran:

Script dieksekusi dua kali di sini. Nilai kunci yang ada diberikan untuk pertama kalinya dan nilai kunci yang tidak ada diberikan untuk kedua kalinya.

Contoh-2: Cari nilai tertentu dalam data JSON

Skrip berikut menunjukkan cara mencari nilai tertentu dalam data JSON. pelamar variabel berisi data JSON dimana kunci digunakan untuk menyimpan nama pemohon dan nilai digunakan untuk menyimpan pemohon ada atau tidak ada. Script akan mencari nilai 'Absen' dalam data JSON dan mencetak nilai nama yang sesuai. untuk loop digunakan di sini, ulangi data JSON.

#!/usr/bin/env python3
# Impor modul json
impor json
# Tentukan data json
pelamar ="""
"Scott C Aldridge": "Hadir",
"Joe L Foss": "Hadir",
"Clyde M Emas": "Hadiah",
"Monique C Doolittle": "Absen",
"David M Volkert": "Hadir",
"Israel M Oneal": "Hadir",
"Elizabeth M Groff": "Tidak hadir"
"""
# Inisialisasi penghitung
penghitung = 0
# memuat data json
daftar aplikasi = json.beban (pelamar)
# ulangi json untuk menemukan daftar pelamar yang tidak hadir
untuk kunci di appList:
if (appList[key] == 'Absent'):
# Periksa penghitung untuk mencetak pesan
jika (penghitung == 0):
print("Pelamar berikut tidak hadir:")
cetak (kunci)
penghitung = penghitung + 1
# Cetak pesan jika tidak ada pelamar yang tidak hadir
jika (penghitung == 0):
print("Semua pelamar hadir")

Keluaran:

Menurut data JSON dari skrip, dua pelamar tidak hadir. Ini akan menjadi output yang dihasilkan setelah menjalankan skrip:

Contoh-3: Nilai pencarian dalam data array JSON menggunakan fungsi kustom

Dalam skrip berikut, array JSON bernama jsondata didefinisikan. Nilai kunci tertentu akan dicari di sini dan jika nilainya ada maka nilai kunci terkait lainnya akan dicetak sebagai output. harga_pencarian() fungsi didefinisikan di sini mengambil nilai nama kunci yang akan dicari dalam data JSON dan akan mencetak nilai yang sesuai patokan harga kunci.

#!/usr/bin/env python3
# Impor modul json
impor json
# Tentukan variabel json
jsondata = """[

"nama":"pena",
"harga_unit":5
,

"nama":"Penghapus",
"harga_unit":3
,

"nama":"Pensil",
"harga_unit":10
,

"nama":"Kertas putih",
"harga_unit":15

]"""
# memuat data json
item = json.beban (jsondata)
# Masukkan nama item yang ingin Anda cari
item = input("Masukkan nama item:\n")
# Tentukan fungsi untuk mencari item
def search_price (nama):
untuk keyval dalam item:
jika nama.lower() == keyval['nama'].menurunkan():
kembali keyval['unit_price']
# Periksa nilai pengembalian dan pesan cetak
jika (harga_pencarian(item) != Tidak ada):
print("Harganya :", search_price(item))
lain:
print("Barang tidak ditemukan")

Keluaran:

Script dieksekusi dua kali dalam output ini. 'pensil' diambil sebagai nilai nama kunci yang ada di JSON data. Itu patokan harga dari 'pensil' aku s 10 yang dicetak. Lanjut, 'Book' diambil sebagai nilai input yang tidak ada dalam data JSON.

Contoh-4: Cari kunci dalam data JSON bersarang

Skrip berikut menunjukkan langkah-langkah mencari nilai kunci tertentu dalam data JSON bersarang. Di sini, variabel JSON bersarang bernama data bersarang dideklarasikan untuk menyimpan data bersarang. Script ini akan mencari nama merek jam tangan wanita.

#!/usr/bin/env python3
# Impor modul json
impor json
# Tentukan variabel json dari data bersarang
nestedData = """
"menonton":
"pria":
"merek":"Titan",
"harga":200
,
"perempuan":
"merek":"Warga negara",
"harga":250
,
"anak":
"merek":"Blancpain",
"harga":100


"""
# Muat data json
daftar pantauan = json.memuat (Data bersarang)
# Cari 'merek' untuk wanita
if 'brand' di daftar pantauan['watch']['women']:
print(daftar pantauan['watch']['women']['brand'])

Keluaran:

Dalam skrip di atas, hanya ada satu nilai merek untuk jam tangan wanita yaitu 'Warganegara'. Berikut ini akan menjadi output setelah menjalankan skrip:.

Contoh-5: Cari entri dari file JSON menggunakan metode filter dan lambda

Langkah-langkah berikut menunjukkan bagaimana Anda dapat mencari entri dari file JSON berdasarkan kunci dan nilai tertentu. Isi dari buku.json file diberikan di bawah ini.

buku.json

[

"isbn": "7799349885",
"name": "Esensial Dinamika Kendaraan",
"penulis": "Joop P. Pauwelussen"
,

"isbn": "7799349885",
"name": "Aliran dan Pembakaran pada Mesin Reciprocating",
"penulis": "C. Arcoumanis dan T. Kamimoto"
,

"isbn": "7799349885",
"name": "Interaksi Kendaraan Pengemudi Ergonomi Otomotif",
"penulis": "Nikolaos Gkikas"

]

Skrip berikut akan mencari entri dari buku.json file, dimana nilai penulis kuncinya adalah Nikolaos Gkikas menggunakan lambda dan Saring() metode.

#!/usr/bin/env python3
# Impor modul JSON
impor json
# Buka file JSON yang ada untuk dimuat ke dalam variabel
dengan terbuka('buku.json') sebagai jsondata:
data = json.memuat (jsondata)
# Cari data berdasarkan kunci dan nilai menggunakan metode filter dan daftar
print(daftar(filter(lambda x:x["penulis"]=="Nikolaos Gkikas",data)))

Keluaran:

Output berikut akan muncul setelah menjalankan skrip:.

Kesimpulan:

Saat bekerja dengan sejumlah besar data JSON dan perlu mengetahui informasi spesifik dari data dengan mudah, kita harus menggunakan cara yang efisien untuk melakukan tugas. Berbagai cara mencari kunci dan nilai dalam data JSON dijelaskan dalam artikel ini untuk membantu pengguna python melakukan proses dengan sukses.

Game Lab Aplikasi Oculus Teratas
Jika Anda adalah pemilik headset Oculus maka Anda harus tahu tentang sideloading. Sideloading adalah proses menginstal konten non-toko di headset Anda...
10 Game Teratas untuk Dimainkan di Ubuntu
Platform Windows telah menjadi salah satu platform yang mendominasi untuk bermain game karena persentase besar dari game yang berkembang saat ini untu...
5 Game Arkade Terbaik untuk Linux
Saat ini, komputer adalah mesin serius yang digunakan untuk bermain game. Jika Anda tidak bisa mendapatkan skor tinggi baru, Anda akan tahu apa yang s...