Cara menggunakan python dict to json

JSON(JavaScript Object Notation) adalah format file yang populer untuk menyajikan data terstruktur dan mentransfer data antara server dan aplikasi dengan mudah. Struktur file ini mirip dengan beberapa objek Python seperti daftar, tupel, dan kamus. Anda dapat mengonversi objek kamus apa pun menjadithe JSON objek dengan menggunakan dump() dan dumps() metode the jsonmodul. Artikel ini menunjukkan cara untuk mengonversi objek kamus apa pun ke objek JSON dengan python.

json.dumps() metode:

Metode ini digunakan untuk mengubah objek kamus menjadi data JSON untuk penguraian atau pembacaan dan lebih lambat dari dump() metode.

Sintaksis:

json.dumps(object, indent=None, sort_keys=False)

Metode ini memiliki banyak argumen opsional. Penggunaan satu argumen wajib dan dua argumen opsional ditampilkan dalam artikel ini. Di sini, argumen pertama adalah argumen wajib yang digunakan untuk mengambil objek kamus apa pun, argumen kedua digunakan untuk menentukan jumlah unit untuk indentasi dan argumen ketiga digunakan untuk mengurutkan kunci.

json.dump() metode:

Metode ini digunakan untuk menyimpan objek python ke dalam file JSON. Ini lebih cepat daridumps() metode karena menulis dalam memori dan file secara terpisah.

Sintaksis:

json.dump(dicionary, fileHandler, indent=None)

Metode ini memiliki banyak argumen seperti dumps(). Penggunaan tiga argumen digunakan dalam artikel ini untuk mengubah data objek kamus menjadi data JSON dan menyimpan data ke dalam file JSON. Di sini, argumen pertama digunakan untuk mengambil objek kamus yang perlu diubah menjadi objek JSON, dan argumen kedua digunakan untuk mengambil nama file handler dari file tempat data JSON akan ditulis. Argumen ketiga digunakan untuk mengatur unit indentasi.

Bagaimana kedua metode ini dapat digunakan untuk mengonversi objek kamus menjadi file JSON atau string JSON ditampilkan di bawah artikel ini.

Contoh-1: Ubah kamus menjadi JSON menggunakan dumps() dengan lekukan

Disebutkan sebelumnya bahwa metode dumps() memiliki satu parameter wajib dan dapat mengambil objek kamus untuk mengubah data menjadi string JSON. Dalam skrip berikut,dict_dataadalah variabel kamus yang berisi data catatan siswa tertentu. Pertama,the dumps() metode digunakan dengan satu argumen dan nilai dict_datadiubah menjadi data JSON. Output dari format kamus dan JSON adalah sama jika tidak ada lekukan yang digunakan dalam data JSON. Berikutnya,the dumps() metode digunakan dengan dua argumen, dan 3 digunakan sebagai nilai indentasi untuk data JSON. Output JSON kedua akan dihasilkan dengan lekukan.

#!/usr/bin/env python3
# Import json module
import json

# Define a dictionary
dict_data = { "student_id": "011894", "name": "Matthew", "batch": 30, "semester":6 }
# Print dictionary data
print("Dictonary Output: n", dict_data, "n")

# Convert dictionary into json object without indentation
json_data = json.dumps(dict_data)
# print json data
print("JSON Output without indentation: n",json_data, "n")

# Convert dictionary into json object with indentation
json_data = json.dumps(dict_data,indent=3)
# print json data with indentation
print("JSON Output with indentation: n", json_data)

Keluaran:

Output berikut akan muncul setelah menjalankan skrip.

Contoh-2: Ubah kamus menjadi JSON menggunakan dumps() dengan sort_keys

Kunci data JSON dapat diurutkan dengan menggunakan sort_keysargumen dumps(). Nilai default argumen ini adalah False. Dalam skrip berikut, objek kamus diubah menjadi data JSON tanpa menggunakansort_keys dan menggunakan sort_keys untuk menampilkan useran argumen ini. Metode dumps() pertama digunakan dengan nilai indent 5 dan Output menunjukkan data JSON menggunakan indentasi 5. Dalam metode dumps() kedua, sort_keys digunakan dan disetel ke True untuk menyortir nilai kunci. Output JSON terakhir akan menampilkan data setelah menyortir nilai kunci.

#!/usr/bin/env python3
# Import json module
import json

# Define a dictionary
dict_data = {'name':'Madison','Month':'May','year':2020,'sales':[1000, 2100, 3500, 1200]}
# Print dictionary data
print("Dictonary Output: n", dict_data, "n")

# Convert a dictionary with list data into json
json_data = json.dumps(dict_data,indent = 5)
# print json data
print("JSON Output with indentation: n", json_data)

# Convert a dictionary with list data into json by sorting keys
json_data = json.dumps(dict_data,indent = 5, sort_keys = True)
# print sorted json data based on keys
print("Sorted JSON Output with indentation: n", json_data)

Keluaran:

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

Contoh-3: Ubah kamus menjadi data JSON dan simpan menjadi file JSON

Jika Anda ingin menyimpan data JSON ke dalam file setelah mengonversi dari kamus maka Anda harus menggunakan the dump()metode. Bagaimana Anda dapat mengonversi objek kamus menjadi data JSON dan menyimpan data dalam file JSON ditunjukkan dalam contoh ini. Di sini,dump()metode menggunakan tiga argumen. Argumen pertama mengambil objek kamus yang didefinisikan sebelumnya. Argumen kedua mengambil variabel file handler yang juga didefinisikan sebelumnya untuk membuat file JSON. Argumen ketiga mendefinisikan nilai indentasi. Konten JSON yang baru ditulis akan dicetak nanti sebagai output.

#!/usr/bin/env python3
# Import json module
import json

# Define a dictionary
dict_data = { 'c-101': 'PHP Programming', 'c-102': 'Bash Programming', 'c-103':
'Python Programming',
  'c-104': 'Object Oriented Programming' }
# Print dictionary data
print("Dictonary Output: n", dict_data, "n")

# Set the json filename
jsonFile = 'course_list.json'
# Open a json file for writing json data
with open(jsonFile, 'w') as fileHandler1:
  json.dump(dict_data, fileHandler1, indent = 2)

# Open a json file for reading
fileHandler2 = open(jsonFile)
print("content of the JSON file: n", fileHandler2.read())

Keluaran:

Output berikut akan muncul setelah menjalankan skrip.

Kesimpulan:

Diperlukan untuk menyembunyikan data kamus menjadi data JSON untuk mempermudah berbagai tugas pemrograman. Konversi data ini penting karena data dapat ditransfer dari satu skrip ke skrip lain dengan mudah menggunakan JSON. Saya harap, tutorial ini akan membantu user python untuk mengetahui cara mengubah data kamus menjadi data JSON dan menerapkannya dengan benar dalam skrip mereka.