#07 LIST (RO'YXAT)
List yordamida bir o'zgaruvchida ko'p qiymatlar saqlashni o'rganamiz.
Last updated
List yordamida bir o'zgaruvchida ko'p qiymatlar saqlashni o'rganamiz.
Last updated
Avvalgi darsimizda biz o'zgaruvchi yaratish, va uning ichida biror qiymatni (matn yoki son) saqlashni o'rgandik. Bunda biz bitta o'zgaruvchiga bitta qiymat berdik xolos.
Bugun o'rganadigan navbatdagi mal'umot turi List (ro'yxat) deb ataladi. Ro'yxat o'z nomi bilan, bitta o'zgaruvchida bir nechta qiymatlarni saqlash imkonini beradi. Bu qiymatlar List elementlari deyiladi. Ro'yxatda son, matn yoki aralash turdagi elementlarni saqlash mumkin.
List quyidagicha yaratiladi:
Ro'yxat saqlaydigan o'zgaruvchilarni nomlashda -lar (ko'plik) qo'shimchasini qo'shish maqsadga muvofiq bo'ladi (inlgiz tilida -s).
Misol uchun: mevalar
, uylar
, cars
, toys
, books
Ro'yxatdagi har bir element tartib bilan joylashgani sababli, biz istalgan elementga uning tartib raqami (indeksi) bo'yicha murojat qilishimiz mumkin.
Dasturlash olamida indeks 0
dan boshlanadi! Ya'ni Listning birinchi elementing tartib raqami (indeksi) 0
ga, ikkinchi elementning indeksi 1
ga teng va hokazo.
Natija:
Birinchi meva: olma
Ikkinchi meva: anjir
Agar list ichidagi elementlar matn ko'rinishid bo'lsa, ularga string metodlarni qo'llashimiz mumkin:
Natija:
Birinchi meva: Olma
Ikkinchi meva: ANJIR
List elementlari ustida arifmetik amallar bajarish:
Natija: 32900
Pythonda Listning eng oxirgi elementiga -1
indeksi orqali ham murojat qilish mumkin. Bu usul Listning uzunligini bilmaganda juda asqotadi.
Natija: Volkswagen
Dastur davomida listning tarkibi o'zgarishi, yangi elementlar qo'shilishi, ba'zi elementlar o'chirilishi tabiiy hol. Misol uchun "Bozorlik ro'yxati" degan dasturni tasavvur qilaylik, foydalanuvchi ro'yxatga yangi mahsulotlar qo'shishi, sotib olganlarini esa o'chrishi mumkin.
Ro'yxatdagi biror elementning qiymatini o'zgartirish uchun, o'sha elementga indeksi bo'yicha murojat qilamiz va yangi qiymat yuklaymiz
Natija: [13000, 18000, 11000, 24000]
.append()
metodiRo'yxatga yangi element qo'shishning oson usuli bu .append()
metodi yordamida ro'yxatning oxiriga qiymat qo'shish:
Natija: ['olma', 'anjir', 'shaftoli', "o'rik", 'tarvuz']
.append()
metodi bo'sh ro'yxatni to'ldrisihda juda qulay usul. Odatda dastur boshida bo'sh ro'yxat yaratilib, dastur davomida ro'yxat foydalanuvchi tomonidan to'ldirib borilishi odatiy hol.
Natija: ['Lacetti', 'Nexia 3', 'Cobalt']
.insert()
metodiRo'yxatning istalgan joyiga yangi element qo'shish uchun .insert()
metodidan foydalanamiz. .insert()
metodi ichida yangi elementning indeksi va qiymati beriladi:
Natija: ['Malibu', 'Lacetti', 'Nexia 3', 'Cobalt']
Natija: ['Malibu', 'Lacetti', 'Damas', 'Nexia 3', 'Cobalt']
Ro'yxatdan biror elementni olib tashlash uchun uning indeksini yoki qiymatini bilishimiz lozim.
Inedks yordamida olib tashlash uchun del
operatoridan foydalanamiz:
Natija: ['olma', 'shaftoli', "o'rik", 'anor']
Element qiymati bo'yichi o'chirish uchun esa .remove(qiymat)
metodidan foydalanamiz. Buning uchun qavs ichida o'chirib tashlash kerak bo'lgan qiymatni yozamiz
Natija: ['olma', 'anjir', "o'rik", 'anor']
.remove(qiymat)
metodi ro'yxatda uchragan birinchi mos keluvchi qiymatni o'chiradi. Agar ro'yxatning ichida 2 va undan ko'p bir hil qiymatli elementlar bo'lsa, ulardan eng birinchisi o'chadi.
Natija: ['it', 'sigir', "qo'y", 'quyon', 'mushuk']
Ba'zida biror elementni butunlay o'chirib tashlash emas, balki uni ro'yxatdan sug'urib olish va undan foydalanish talab qilinishi mumkin. Buning uchun Pythonda .pop(indeks)
metodidan foydalanmiz.
Natija:
Men banan sotib oldim
Olinmagan mahsulotlar: ["yog'", 'un', 'piyoz', "go'sht"]
Agar .pop()
metodida indeks berilmasa, ro'yxatdan o'xirgi qiymat sug'urib olinadi.
Quyidagi mashqlarni bajaring:
ismlar
degan ro'yxat yarating va kamida 3 ta yaqin do'stingizning ismini kiriting
Ro'yxatdagi har bir do'stingizga qisqa xabar yozib konsolga chiqaring:
sonlar
deb nomlangan ro'yxat yarating va ichiga turli sonlarni yuklang (musbat, manfiy, butun, o'nlik).
Yuqoridagi ro'yxatdagi sonlar ustida turli arifmetik amallar bajarib ko'ring. Ro'yxatdagi ba'zi sonlarning qiymatini o'zgartiring, ba'zilarini esa almashtiring.
t_shaxslar
va z_shaxslar
degan 2 ta ro'yxat yarating va biriga o'zingiz eng ko'p hurmat qilgan tarixiy shaxslarning, ikkinchisiga esa zamonamizdagi tirik bo'lgan shaxslarning ismini kiriting.
Yuqoridagi ro'yxatlarning har biridan bittadan qiymatni sug'urib olib (.pop()
), quyidagi ko'rinishda chiqaring:
friends
nomli bo'sh ro'yxat tuzing va unga .append()
yordamida 5-6 ta mehmonga chaqirmoqchi bo'lgan do'stlaringizni kiriting.
Yuqoridagi ro'yxatdan mehmonga kela olmaydigan odamlarni .remove()
metodi yordamida o'chrib tashlang.
Ro'yxatning oxiriga, boshiga va o'rtasiga yangi ismlar qo'shing.
Yangi mehmonlar
deb nomlangan bo'sh ro'yxat yarating. .pop()
va .append()
metodlari yordamida mehmonga kelgan do'stlaringizning ismini friends ro'yxatidan sug'urib olib, mehmonlar ro'yxatiga qo'shing.