Дастурлаш асослари


Ro’yxatlar ustida amallar



Download 5,59 Mb.
bet35/90
Sana15.06.2022
Hajmi5,59 Mb.
#674164
1   ...   31   32   33   34   35   36   37   38   ...   90
Bog'liq
UMK Python dasturlash tili (107-buyruq bcha) 2021-2022

Ro’yxatlar ustida amallar
Ro’yxat elementiga murojaat element indeksini kvadrat qavs orasiada ko’rsatish orqali amalga oshiriladi. Elementlar tartibi noldan boshalanadi. Masalan:
>>> arr = [1, "str", 3.2, "4 "]
>>> arr[0] , arr[1] , arr[2] , arr[3]
(1, 'str', 3.2, '4')
Pozitsion o’zlashtirishda elementlar qiymatini ihtiyoriy o’zgaruvchilarga o’zlashtirish mumkin. Bunda chap tomondagi o’zgaruvchilar soni o'ng tomondagi elementlar soniga o’zaro mos bo’lishi kerak, aks holda xatolik yuz beradi:
>>> х, у, z = [1, 2, 3] # Pozitsion o’zlashtirish
>>> х, у, z
(1, 2, 3)
>>> х, у = [1, 2, 3] # Elementlar soni mos bo’lishi kerak
Traceback (most recent call last):
Fi le "
" , line 1, in
х, у = [1, 2, 3] # Elementlar soni mos bo’lishi kerak
ValueError: too many values to unpack (expected 2)
Python 3 da pozitsion o’zlashtirishda chap tomondagi bitta o’zgaruvchi oldidan yulduzcha yozish va bu orqali ortiqcha elementlarni ro’yxat sifatida unga o’zlashtirish mumkin. Agar ortiqcha element bo’lmasa, bu o’zgaruvchi o’zida bosh ro’yxatni saqlaydi:
>>> х, у, *z = [1, 2, 3] ; х, у,
(1, 2, [3] )
>>> х, у, *z = [1, 2, 3, 4, 5] ; x, y, z
(1, 2, [3, 4, 5])
>>> х, у, *z = [1, 2] ; х, у, z
( 1, 2, [ ] )
>>> *х, у, z = [1, 2] ; х, у, z
( [ ], 1, 2 )
>>> х, *у, z = [1, 2, 3, 4, 5] ; х, у, z
(1, [2, 3, 4] , 5)
>>> *z = [1, 2, 3, 4, 5] ; z
[1, 2, 3, 4, 5]
Ro’yxat elementlarni tartiblash nol dan boshlangani uchun ohirgi element tartibi elementlar sonidan bitta kam bo’ladi. Elementlar sonini aniqlash uchun len() funksiyasidan foydalaniladi:
>>> arr = [1, 2, 3, 4, 5]
>>> len (arr) # Elementlar sonini aniqlaymiz
5
>>> arr [len (arr ) -1] # Ohirgi element tartibini aniqlaymiz
5
Agar ko’rsatilgan indeksdagi element mavjud bo’lmasa, IndexError xatoligi yuz beradi:
>>> arr = [1, 2, 3, 4, 5]
>>> arr [5] # Mavjud bo’lmagan elementga murojaat
Traceback (most recent call last):
File "
", line 1, in
arr [5] # Mavjud bo’lmagan elementga murojaat
IndexError: list index out of range
Indeks sifatida manfiy qiymatdan foydalanih mumkin. Bu holda tartiblanish ro’yxat oxiridan boshlanadi. Agar indeksni musbatlashtirmoqchi bo’lsak, elementlar sonidan manfiy indeksni ayrladi. Masalan:
>>> arr = [1, 2, З, 4, 5]
>>> arr [- 1] , arr [len (arr) -1] # Oxirgi elementga murojaat
(5, 5)
Ro’yxatlar o’zgaruvchi turlaga kirgani uchun indekslar yordamida ularning elementlarini o’zgartirish mumkin:
>>> arr = [1, 2, 3, 4, 5]
>>> arr [0] = 600 # indeks bo’yicha elementni o’zgartirish
>>> arr
[600, 2, 3, 4, 5]
Bundan tashqari ro’yxatlarda ko’rsatilgan qismdagi ro’yxat elementlarini nusxalab olish imkoniayati mavjud. Amal formati:
[ : : ]
Barcha barametrlar majburiy emas. Agar ko’rsatilmasa qiymat siaftida 0 olinadi, ko’rsatilmasa ohirigacha olinadi.
Agar : parametri kiritilmasa 1 qiymatdan foydlaniladi. Parametrlar qiymati sifatida manfiy son olinishi mumkin. Misol ko’rib chiqamiz. Dastlab ro’yxat yuzaki nusxasini olamiz:
>>> arr = [1, 2, 3, 4, 5 ]
>>> m = arr[ : ]; m # Yuzaki nusxa yaratamiz va qiymatni chop etamiz
[1, 2, 3, 4, 5 ]
>>> m is arr # is operatori turli obyekt ekanligini ko’rsatyapdi
False
Endi belgilarni teskari tartibda chop etamiz:
>>> arr = [1, 2, 3, 4, 5 ]
>>> arr [ : : -1 ] # - 1 qadam
[5, 4, 3, 2, 1]
Birinchi va ohirgi elementsiz chop etamiz:
>>> arr [1:] # birinchi elementsiz
[2, 3, 4, 5]
>>> arr [ :- 1] # Ohirgi elementsiz
[1, 2, 3, 4]
Ro’yxatning birinchi ikki elementini olamiz:
>>> arr [0:2] # 2 indeksli belgi chop etilmaydi
[1, 2]
Endi ohirgi elementni chop etamiz
>>> arr[- 1:] # ro’yxatning ohirgi elementi
[5]
Va nihoyat ikkinchidan to’rtinchigacha elemetlarni chop etamiz:
>>> arr[1:4] # 1, 2 va 3 indeksli elementlar olinadi
[2, 3, 4]
Qirqim bo’yicha ro’yxat bo’lagini o’zgartirish mumkin. Agar qirqimda bo’sh ro’yxat o’zlashtirilsa, ushbu bo’lak asosiy ro’yxatdan o’chiriladi:
>>> arr = [1, 2, 3, 4, 5]
>>> arr[ l:3 ] = (6, 7) # 1 va 2 indeksli elementni o’zgartiramiz
>>> arr
[1, 6, 7, 4, 5 ]
>>> arr[l:3 ] = [ ] # 1 va 2 indeksli element o’chiriladi
>>> arr
(1, 4, 5]

Ikkita ro’yxatni bittaga birlashtirishda + operatoridan foydalaniladi:


>>> arrl = [1, 2, З, 4, 5]
>>> arr2 = [ 6, 7, 8, 9]
>>> arr3 = arrl + arr2
>>> arr3
[1, 2, 3, 4, 5, 6, 7, 8, 9]
+ operatori o’rniga += operatoridan foydalanish mumkin. Bu holda elementlar joriy ro’yxatga qo’shiladi:
>>> arr = [1 , 2, 3, 4, 5]
>>> arr += [6 , 7, 8, 9]
>>> arr
[1, 2, 3, 4, 5, 6, 7, 8, 9 ]
Ko’rib chiqilgan amallardan tashqari ro’yxatlar uchun takrorlash(* operatori yordamida), tegishlilikka tekshirish (in operatori yordamida) amallarini qo’llash mumkin:
>>> [ 1, 2, 3] * 3 # takrorlash amali
[1, 2, 3, 1, 2, 3, 1, 2, 3]
>>> 2 in [1, 2, 3, 4, 5], 6 in [1, 2, 3, 4, 5] #Tegishlilikka tekshirish
(True, False)
Ro’yaxatga elementlar qo’shish va o’chirish .Ro’yxat elementlarini qidirish va ro’yxatga kirivchi qiymatlari haqida ma’lumot olish. Ro’yxatni teskarilash va aralshtirish. Tasodifiy elementni tanlash


Reja

  1. Ro’yaxatga elementlar qo’shish va o’chirish.

  2. Elementni ro'yxatda mavjudligini tekshirish.


Download 5,59 Mb.

Do'stlaringiz bilan baham:
1   ...   31   32   33   34   35   36   37   38   ...   90




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish