AI Ustoz UZ: sun’iy intellektni o‘zbek tilida o‘rganing

Lug‘at va JSON: tuzilgan ma’lumot

Boshlang‘ich daraja · 3-dars · taxminan 12 daqiqa

Lug‘at (dictionary) kalit–qiymat juftliklarini figurali qavsda saqlaydi. Qiymatni kalit orqali olasiz: lugat["kalit"]. Qiymatni o‘zgartirish ham shunday: lugat["kalit"] = yangi.

model = {"nom": "Mini", "versiya": 2}
print(model["nom"])
model["versiya"] = 3
print(model["versiya"])
NatijaMini
3

JSON — ma’lumotni matn ko‘rinishida almashish formati; u Python lug‘ati va ro‘yxatiga juda o‘xshaydi. Dasturlar, jumladan sun’iy intellekt xizmatlari, bir-biriga ko‘pincha JSON yuboradi. Python’dagi json moduli: json.dumps(lugat) lug‘atni matnga, json.loads(matn) matnni lug‘atga aylantiradi.

import json

paket = {"rol": "foydalanuvchi", "matn": "Salom"}
matn = json.dumps(paket)
print(matn)
qayta = json.loads(matn)
print(qayta["rol"])
Natija{"rol": "foydalanuvchi", "matn": "Salom"}
foydalanuvchi

Murakkab javoblarda ma’lumot qatlam-qatlam joylashadi. Kerakli qiymatga yo‘lni kalitlar va indekslar ketma-ketligi bilan yozasiz: masalan d["xabarlar"][1]["matn"] — avval «xabarlar» ro‘yxati, undan ikkinchi element (indeks 1), undan «matn» qiymati.

Esda tuting

  • Lug‘at: {"kalit": qiymat}, o‘qish: lugat["kalit"].
  • json.dumps — lug‘atdan matn, json.loads — matndan lug‘at.
  • Ichma-ich ma’lumotga yo‘l: d["a"][1]["b"].

Mashq

json.loads(matn) nima qiladi?

Javob va izoh
  1. JSON matnini Python lug‘atiga (yoki ro‘yxatiga) aylantiradi. (to‘g‘ri javob)loads matnni o‘qib, Python ma’lumot tuzilmasini yaratadi.
  2. Lug‘atni faylga yozadi.faylga yozish boshqa amal; loads faylga tegmaydi.
  3. Matnni boshqa tilga tarjima qiladi.json moduli tarjima qilmaydi, faqat formatni o‘zgartiradi.

Kod mashqlari

  1. model nomli lug‘at yarating: nom kaliti «Mini», versiya kaliti 2 bo‘lsin. Keyin nom qiymatini chiqaring.
    Maslahat: Lug‘at: {"kalit": qiymat, ...}. Qiymatni olish: model["nom"].
  2. d ichidagi ma’lumotdan foydalanuvchi xabarining matnini (ikkinchi element) chiqaring.
    Maslahat: d["xabarlar"] ro‘yxat; ikkinchi element indeksi 1; undan ["matn"] qiymatini oling.

Mashqni ilovada bajaring.

Amaliy vazifa

O‘zingiz haqingizda lug‘at tuzing (ism, yosh, shahar), uni json.dumps bilan matnga aylantirib chiqaring. Haqiqiy shaxsiy ma’lumotingizni yozish shart emas.

  • Lug‘at tuzdim
  • json.dumps bilan matn oldim

Lug‘at

Interaktiv rejim: qidiruv, progress va Python mashqlari.