← Kembali ke Blog

Python dan JSON: Panduan Lengkap Modul json

Kuasai JSON di Python dengan modul json. Pelajari cara mengurai, menghasilkan, dan memanipulasi data JSON dengan contoh praktis dan praktik terbaik.

Big JSON Team13 menit bacapemrograman
B

Big JSON Team

Technical Writer

Expert in JSON data manipulation, API development, and web technologies. Passionate about creating tools that make developers' lives easier.

13 min read

Modul json di Python

Modul json bawaan Python membuat pekerjaan dengan data JSON menjadi sederhana dan efisien.

Mengurai (Parsing) JSON

json.loads() - Mengurai String JSON

import json

json_string = '{"name": "Alice", "age": 30}'

data = json.loads(json_string)

print(data['name']) # "Alice"

print(type(data)) # <class 'dict'>

json.load() - Membaca dari File

import json

with open('data.json', 'r') as file:

data = json.load(file)

print(data)

Menghasilkan JSON

json.dumps() - Mengonversi ke String JSON

import json

data = {

"name": "Bob",

"age": 25,

"active": True

}

json_string = json.dumps(data)

print(json_string)

# {"name": "Bob", "age": 25, "active": true}

Mempercantik Tampilan (Pretty Printing)

json_string = json.dumps(data, indent=2)

print(json_string)

# {

# "name": "Bob",

# "age": 25,

# "active": true

# }

json.dump() - Menulis ke File

with open('output.json', 'w') as file:

json.dump(data, file, indent=2)

Pemetaan Tipe

| Python | JSON |

|--------|------|

| dict | object |

| list, tuple | array |

| str | string |

| int, float | number |

| True | true |

| False | false |

| None | null |

Opsi Umum

Mengurutkan Kunci (Sort Keys)

json.dumps(data, sort_keys=True)

Menangani Objek yang Tidak Dapat Diserialisasi

from datetime import datetime

def json_serial(obj):

if isinstance(obj, datetime):

return obj.isoformat()

raise TypeError(f"Tipe {type(obj)} tidak dapat diserialisasi")

data = {"timestamp": datetime.now()}

json.dumps(data, default=json_serial)

Penanganan Kesalahan (Error Handling)

try:

data = json.loads(invalid_json)

except json.JSONDecodeError as e:

print(f"Error: {e}")

print(f"Baris {e.lineno}, Kolom {e.colno}")

Bekerja dengan API

import requests

import json

response = requests.get('https://api.example.com/users')

data = response.json() # Mengurai JSON secara otomatis

for user in data['users']:

print(user['name'])

Praktik Terbaik

  • Selalu gunakan pernyataan with untuk operasi file
  • Tangani pengecualian JSONDecodeError
  • Gunakan indent untuk output yang mudah dibaca
  • Validasi data sebelum mengurai
  • Gunakan enkoding UTF-8 untuk file
  • Kesimpulan

    Modul json di Python sangat andal dan mudah digunakan. Kuasai json.loads(), json.dumps(), dan operasi file untuk semua kebutuhan JSON Anda!

    Share:

    Artikel Terkait

    Read in English