>>> range(5,10)
[5, 6, 7, 8, 9] 27
>>> range(0,10,3)
[0, 3, 6, 9]
>>> range(-10,-100,-30)
[-10, -40, -70]
Ketma-ketlik indekslarini tanlash uchun range() va len() funksiyalarini birgalikda
ishlating. Katta diapazondagi raqamlardan foydalanib ro`yxatni yaratish range() funksiyasi o`zini oqlamaydi yoki ba’zi hollarda xotira yetishmaydi.
Shunday hollarda Python da xrange() funksiyasidan foydalaniladi.
Break operatori
Break operatori agar siklning bajarilish sharti hali False qiymat olmagan
bo'lsa ham yoki ketma-ketlik elementlari hali tugamagan bo'lsa ham siklni to'xtatish,
ya'ni buyruqlar bajarilishini to'xtatish uchun xizmat qiladi . Shuni aytib o'tish
kerakki, for yoki while sikllarini break operatori bilan to'xtatilsa, ularga tegishli
bo'lgan else bloki bajarilmaydi.
Misol:
Natija: 28
Continue operatori
Continue operatori joriy blokdagi o'zidan keyingi qolgan barcha buyruqlarni
bajarmay siklning keyingi iteratsiyasidan davom ettirish uchun ishlatiladi.
[5, 6, 7, 8, 9] 27
>>> range(0,10,3)
[0, 3, 6, 9]
>>> range(-10,-100,-30)
[-10, -40, -70]
Ketma-ketlik indekslarini tanlash uchun range() va len() funksiyalarini birgalikda
ishlating. Katta diapazondagi raqamlardan foydalanib ro`yxatni yaratish range() funksiyasi o`zini oqlamaydi yoki ba’zi hollarda xotira yetishmaydi.
Shunday hollarda Python da xrange() funksiyasidan foydalaniladi.
Break operatori
Break operatori agar siklning bajarilish sharti hali False qiymat olmagan
bo'lsa ham yoki ketma-ketlik elementlari hali tugamagan bo'lsa ham siklni to'xtatish,
ya'ni buyruqlar bajarilishini to'xtatish uchun xizmat qiladi . Shuni aytib o'tish
kerakki, for yoki while sikllarini break operatori bilan to'xtatilsa, ularga tegishli
bo'lgan else bloki bajarilmaydi.
Misol:
Natija: 28
Continue operatori
Continue operatori joriy blokdagi o'zidan keyingi qolgan barcha buyruqlarni
bajarmay siklning keyingi iteratsiyasidan davom ettirish uchun ishlatiladi.
Media is too big
VIEW IN TELEGRAM
Ro`yxatni yaratgandan so`ng uning ustida turli amallarni bajarish kerak bo`ladi, albatta, buning uchun esa Pythonni o`ziga kiritilgan bir qancha funksiya va metodlar bor.
Media is too big
VIEW IN TELEGRAM
Kortejlar bir nechta ob’yektlarni birgalikda saqlashga xizmat qiladi. Ularni ro’yxatlarga o’xshatish mumkin. Lekin ular ro’yxatlar kabi boy funksionallikka ega emas. Ularning asosiy jihati qatorlarga o’xshab o’zgarmasliklaridir. Kortej- elementlar orasini vergul bilan ajratish orqali hosil qilinadi. Kortejga ma’no jihatdan o`zgarmas ro`yxat deb ta’rif berdik. Shu o`rinda savol tug`iladi. Ro`yxat bo`lsa kortej nimaga kerak:
1. Turli holatlardan himoyalanish. Bu degani kortej o`zgartirishlardan
himoyalangan bo`ladi, rejali (bu yomon) va tasodifiy (bu yaxshi) o`zgarishlardan xalos bo`ladi.
2. Kichik hajm. So`zlar bilan ifodalamasdan. 50
3. Kortejdan lug`at kaliti sifatida foydalanish mumkin:
Kortej afzalliklari haqida bilib oldik. Endi kortej bilan qanday ishlashni ko`ramiz.
Bu xuddi ro`yxatlar bilan ishlashga o`xshaydi. Bo`sh kortejni yaratamiz:
Bir elementli kortejni yaratamiz:
Stop. Satr paydo bo`ldi. Bizga esa kortej kerak. Qanday qilib kortejga ega bo`lamiz?
Ura! Ishladi! Hamma gap vergulda. Qavuslar bu yerda hech nimani anglatmaydi.
Kortejni yana quyidagicha yatish mumkin.
Lekin qavus qo`yish lozim, ba’zi bir holatlar borki qavuslar juda kerak. Tuple()
funksiyasi yordamida iteratsiyalangan obyektdan kortej yaratish mumkin:
Kortejning elmentlariga ham ro`yxatlardagi kabi indeks bo`yicha murojat
qilish mumkin (masalan: element nechanchi indeksdaligini bilish uchun). Bunda
ham indekslash 0 (nol) dan boshlanadi ya’ni 6 ta elementdan iborat kortejning 51
indeksi 0..5 gacha bo`ladi. Kortej indeksi esa [] operatori orasiga beriladi. Agar bizga
kortejning elementilarini teskaridan chiqarish kerak bo`lsa uning indeksini manfiy
(masalan: kortej[-5]) beramiz. Quyidagi misolda shularni ko`rib chiqamiz.
Natija: Kortej kesmasi
Kortejning biror qismini bo`lagini ya’ni kesmasini ajratish uchun(masalan: 2
elementidan to 5-chi elementigacha) uning indekslari orasiga-ikki nuqta(:)
qo’yamiz.
Natija: Kortejni o`zgartirish
Kortejlar ustida amal bajarayotganda “+” operatori orqali ikkita kortejni
qo`shishimiz mumkin, va bu konkatenatsiya deb ham ataladi.
Kortej elementlarini takrorlash uchun “*” operatoridan foydalanamiz. “+” va “*” operatorlarini kortejlarda qo`llaganimizdan so`ng yangi ko`rinishdagi kortejga
ega bo`lamiz
Kortejning funksiya va metodlari
Count(x)-kortejdagi x elementi sonini qaytaradi.
Index(x)-kortejdagi x elementining indeksini qaytaradi.
Any()-agar kortej elementi mavjud bo`lsa True qiymat qaytaradi, aks holda (kortej
bo`sh bo`lsa) False qiymat qaytaradi.
Max()-kortejning maksimal elementini qaytaradi.
Min()- kortejning minimal elementini qaytaradi.
Len()-kortejning uzunligini qaytaradi.
Sorted()-kortej elementlaridan iborat yangi tartiblangan ro`yxatni qaytaradi.
Sum()-kortej elementlari yig`indisini qaytaradi.
Elementni kortejga tegishli ekanligini tekshirish uchun in kalit so`zidan
himoyalangan bo`ladi, rejali (bu yomon) va tasodifiy (bu yaxshi) o`zgarishlardan xalos bo`ladi.
2. Kichik hajm. So`zlar bilan ifodalamasdan. 50
3. Kortejdan lug`at kaliti sifatida foydalanish mumkin:
Kortej afzalliklari haqida bilib oldik. Endi kortej bilan qanday ishlashni ko`ramiz.
Bu xuddi ro`yxatlar bilan ishlashga o`xshaydi. Bo`sh kortejni yaratamiz:
Bir elementli kortejni yaratamiz:
Stop. Satr paydo bo`ldi. Bizga esa kortej kerak. Qanday qilib kortejga ega bo`lamiz?
Ura! Ishladi! Hamma gap vergulda. Qavuslar bu yerda hech nimani anglatmaydi.
Kortejni yana quyidagicha yatish mumkin.
Lekin qavus qo`yish lozim, ba’zi bir holatlar borki qavuslar juda kerak. Tuple()
funksiyasi yordamida iteratsiyalangan obyektdan kortej yaratish mumkin:
Kortejning elmentlariga ham ro`yxatlardagi kabi indeks bo`yicha murojat
qilish mumkin (masalan: element nechanchi indeksdaligini bilish uchun). Bunda
ham indekslash 0 (nol) dan boshlanadi ya’ni 6 ta elementdan iborat kortejning 51
indeksi 0..5 gacha bo`ladi. Kortej indeksi esa [] operatori orasiga beriladi. Agar bizga
kortejning elementilarini teskaridan chiqarish kerak bo`lsa uning indeksini manfiy
(masalan: kortej[-5]) beramiz. Quyidagi misolda shularni ko`rib chiqamiz.
Natija: Kortej kesmasi
Kortejning biror qismini bo`lagini ya’ni kesmasini ajratish uchun(masalan: 2
elementidan to 5-chi elementigacha) uning indekslari orasiga-ikki nuqta(:)
qo’yamiz.
Natija: Kortejni o`zgartirish
Kortejlar ustida amal bajarayotganda “+” operatori orqali ikkita kortejni
qo`shishimiz mumkin, va bu konkatenatsiya deb ham ataladi.
Kortej elementlarini takrorlash uchun “*” operatoridan foydalanamiz. “+” va “*” operatorlarini kortejlarda qo`llaganimizdan so`ng yangi ko`rinishdagi kortejga
ega bo`lamiz
Kortejning funksiya va metodlari
Count(x)-kortejdagi x elementi sonini qaytaradi.
Index(x)-kortejdagi x elementining indeksini qaytaradi.
Any()-agar kortej elementi mavjud bo`lsa True qiymat qaytaradi, aks holda (kortej
bo`sh bo`lsa) False qiymat qaytaradi.
Max()-kortejning maksimal elementini qaytaradi.
Min()- kortejning minimal elementini qaytaradi.
Len()-kortejning uzunligini qaytaradi.
Sorted()-kortej elementlaridan iborat yangi tartiblangan ro`yxatni qaytaradi.
Sum()-kortej elementlari yig`indisini qaytaradi.
Elementni kortejga tegishli ekanligini tekshirish uchun in kalit so`zidan
Media is too big
VIEW IN TELEGRAM
Pythondagi lug`atlar kalit bo`yicha kirishga ruxsat etuvchi erkin obyektlarning tartiblangan jamlanmasi. Ularni yana assotsiativli massivlar yoki hesh jadvallar deb nomlaydilar. Soddaroq qilib aytadigan bo`lsak l ug’at xuddi manzillar kitobiga o’xshaydi, ya’ni biror insonning ismini bilgan holda uning manzili yoki u bilan bo’g’lanish ma’lumotlarini olish mumkin. Lug`atlar bilan ishlash uchun ham albatta uni yaratish kerak. Lug`atni yaratishni esa bir necha usullari bor.
Birinchidan literal yordamida:
Ikkinchidan dict() funksiyasi yordamida:
Uchinchidan fromkeys metodi orqali:
To`rtinchidan lug`at generatori yoradamida ular ro`yxat generatoriga juda
o`xshash: Lug`at metodlari
Dict.clear()- lug`atni tozalaydi.
Dict.copy()-lug`at nusxasini qaytaradi.
Classmethod dict.fromkeys(seq[, value])- Seq dan kalitni va Value qiymatlariga ega bo`lgan lug`atni yaratadi.
Dict.get(key[, default])-kalit qiymatini qaytaradi, lekin u bo`lmasa xatolik beradi,
default (jimlikda None) qaytaradi.
Dict.items()-juftliklarni qaytaradi(kalit, qiymat)
Dict.keys()- lug`atdagi kalitlarni qaytaradi Dict.pop(key[default])-kalitni yo`qotib qiymatni qaytaradi. Agarda kalit bo`lmasa defaultni qaytaradi.
Dict.popitem()- juftlikni o`chirib qaytaradi (kalit, qiymat). Agarda l ug`at bo`sh
bo`lsa KeyError istisnoni chaqiradi. Esingizda tursin lug`atlar tartibli emas.
Dict.setdefault(key [, default])-kalit qiymatni qaytaradi, lekin u bo`lmasa xatolik bermaydi, default qiymatga ega kalitni yaratadi (jimlikda None).
Dict.update([other])- other dan juftliklarni (kalit, qiymat) kiritib lug`atni to`ldiradi. Mavjud bo`lgan kalitlar qaytadan yoziladilar. None (eski lug`at) qaytaradi. Dict.values()-lug`atdagi qiymatni qaytaradi.
lug`atning qiymati: dict_values(['Gulnoza', '8', '1'])
lugatdagi juftliklar yani kalit va uning qiymatlari: dict_items([('ismi', 'Gulnoza'),
('yoshi', '8'), ('maktabi', '1')])
lugatning kalitlari: dict_keys(['ismi', 'yoshi', 'maktabi'])
lugatning nusxasi: {'ismi': 'Gulnoza', 'yoshi': '8', 'maktabi': '1'} To`plam (set & frozenset)
Pythondagi to`plam- tasodifiy tartibda va takrorlanmaydigan elementlardan
tashkil topgan “konteyner” deyiladi. To`plamni yaratamiz:
Misoldan ko`rinadiki to`plam lug`atdagi literalga o`xshash literalga egalik
qiladi, lekin leteral yordamida bo`sh to`plamni yaratib bo`lmaydi. To`plamdan takrorlanadigan elementlardan qutulish uchun foydalanish qulay bo`ladi :
To`plamlar bilan bir qancha operatsiyalarni bajarish mumkin: birlashmalalarni
topish, kesimlarni topish…
Len(s)- to`plamdagi elementlar soni(to`plam hajmi).
X in s- ‘x’ ‘s’ to`plamga tegishli bo`ladimi yo`qmi shuni tekshiradi
Set.isdisjoint(other)-agarda set va other umumiy elementlarga ega bo`lmasalar rost qiymat qaytaradi.
Set==other- set ning hamma elementlari otherga tegishli bo`ladilar otherni hamma
elementlari setga tegishli bo`ladilar.
Set.issubset(other) yoki set<=other-set ning hamma elementlari other ga tegishli
bo`ladilar.
Set.issuperset(other) yoki set>=other-analogik holat.
Set.union(other, …) yoki |other|…-bir qancha to`plamlar birlashmasi.
Set.intersection(other, …) yoki &other&…- kesib olish.
Set.difference(other, …) yoki -other-…-other ga tegishli bo`lmagan set ning
hamma elementlar to`plami.
Set.symmetric_difference(other); set^other- birinchi to`plamda uchraydigan,
lekin ularning ikkala to`plamning kesishmasida uchramaydigan elementlar.
Set.copy-to`plam nusxasi
To`plamni to`g`ridan-to`g`ri artiradiganoperatsiyalar
Set.update(other, …); set|=other| …- to`plam birlashmasi
Set.intersection_update(other, …); set&=other&…- to`plam kesishmasi Set.difference_update(other, ...); set -= other | ...-to`plam ayirmasi ference_update(other); set ^= other- birinchi to`plamda
uchraydigan, lekin ularning ikkala to`plamning kesishmasida uchramaydigan
elementlar tashkil topgan to`plam.
Set.add(elem)- to`plamga element qo`shadi.
Set.remove(elem)- to`plamdagi elementni o`chiradi. Agarda ko`rsatilgan element
to`plamda mavjud bo`lmasa KeyError ni qaytaradi.
Set.discard(elem)- gar to`plamda ko`rsatilgan element bo`lsa uni o`chiradi.
Set.pop()- to`plamdagi birinchi elementni o`chiradi, lekin top`lam elementlari tartib
bilan joylashmagani uchun birinchi element qaysiligini aniq ko`rsatib bo`lmaydi.
Set.clear()- to`plamni tozaydi.
Ikkinchidan dict() funksiyasi yordamida:
Uchinchidan fromkeys metodi orqali:
To`rtinchidan lug`at generatori yoradamida ular ro`yxat generatoriga juda
o`xshash: Lug`at metodlari
Dict.clear()- lug`atni tozalaydi.
Dict.copy()-lug`at nusxasini qaytaradi.
Classmethod dict.fromkeys(seq[, value])- Seq dan kalitni va Value qiymatlariga ega bo`lgan lug`atni yaratadi.
Dict.get(key[, default])-kalit qiymatini qaytaradi, lekin u bo`lmasa xatolik beradi,
default (jimlikda None) qaytaradi.
Dict.items()-juftliklarni qaytaradi(kalit, qiymat)
Dict.keys()- lug`atdagi kalitlarni qaytaradi Dict.pop(key[default])-kalitni yo`qotib qiymatni qaytaradi. Agarda kalit bo`lmasa defaultni qaytaradi.
Dict.popitem()- juftlikni o`chirib qaytaradi (kalit, qiymat). Agarda l ug`at bo`sh
bo`lsa KeyError istisnoni chaqiradi. Esingizda tursin lug`atlar tartibli emas.
Dict.setdefault(key [, default])-kalit qiymatni qaytaradi, lekin u bo`lmasa xatolik bermaydi, default qiymatga ega kalitni yaratadi (jimlikda None).
Dict.update([other])- other dan juftliklarni (kalit, qiymat) kiritib lug`atni to`ldiradi. Mavjud bo`lgan kalitlar qaytadan yoziladilar. None (eski lug`at) qaytaradi. Dict.values()-lug`atdagi qiymatni qaytaradi.
lug`atning qiymati: dict_values(['Gulnoza', '8', '1'])
lugatdagi juftliklar yani kalit va uning qiymatlari: dict_items([('ismi', 'Gulnoza'),
('yoshi', '8'), ('maktabi', '1')])
lugatning kalitlari: dict_keys(['ismi', 'yoshi', 'maktabi'])
lugatning nusxasi: {'ismi': 'Gulnoza', 'yoshi': '8', 'maktabi': '1'} To`plam (set & frozenset)
Pythondagi to`plam- tasodifiy tartibda va takrorlanmaydigan elementlardan
tashkil topgan “konteyner” deyiladi. To`plamni yaratamiz:
Misoldan ko`rinadiki to`plam lug`atdagi literalga o`xshash literalga egalik
qiladi, lekin leteral yordamida bo`sh to`plamni yaratib bo`lmaydi. To`plamdan takrorlanadigan elementlardan qutulish uchun foydalanish qulay bo`ladi :
To`plamlar bilan bir qancha operatsiyalarni bajarish mumkin: birlashmalalarni
topish, kesimlarni topish…
Len(s)- to`plamdagi elementlar soni(to`plam hajmi).
X in s- ‘x’ ‘s’ to`plamga tegishli bo`ladimi yo`qmi shuni tekshiradi
Set.isdisjoint(other)-agarda set va other umumiy elementlarga ega bo`lmasalar rost qiymat qaytaradi.
Set==other- set ning hamma elementlari otherga tegishli bo`ladilar otherni hamma
elementlari setga tegishli bo`ladilar.
Set.issubset(other) yoki set<=other-set ning hamma elementlari other ga tegishli
bo`ladilar.
Set.issuperset(other) yoki set>=other-analogik holat.
Set.union(other, …) yoki |other|…-bir qancha to`plamlar birlashmasi.
Set.intersection(other, …) yoki &other&…- kesib olish.
Set.difference(other, …) yoki -other-…-other ga tegishli bo`lmagan set ning
hamma elementlar to`plami.
Set.symmetric_difference(other); set^other- birinchi to`plamda uchraydigan,
lekin ularning ikkala to`plamning kesishmasida uchramaydigan elementlar.
Set.copy-to`plam nusxasi
To`plamni to`g`ridan-to`g`ri artiradiganoperatsiyalar
Set.update(other, …); set|=other| …- to`plam birlashmasi
Set.intersection_update(other, …); set&=other&…- to`plam kesishmasi Set.difference_update(other, ...); set -= other | ...-to`plam ayirmasi ference_update(other); set ^= other- birinchi to`plamda
uchraydigan, lekin ularning ikkala to`plamning kesishmasida uchramaydigan
elementlar tashkil topgan to`plam.
Set.add(elem)- to`plamga element qo`shadi.
Set.remove(elem)- to`plamdagi elementni o`chiradi. Agarda ko`rsatilgan element
to`plamda mavjud bo`lmasa KeyError ni qaytaradi.
Set.discard(elem)- gar to`plamda ko`rsatilgan element bo`lsa uni o`chiradi.
Set.pop()- to`plamdagi birinchi elementni o`chiradi, lekin top`lam elementlari tartib
bilan joylashmagani uchun birinchi element qaysiligini aniq ko`rsatib bo`lmaydi.
Set.clear()- to`plamni tozaydi.
slides11-7py.zip
1.6 MB
PowerPoint Pythonni o'rganamiz-1-qism
slides10-8py.zip
3.6 MB
PowerPoint Pythonni o'rganamiz-3-qism
slides11-6py.zip
2.2 MB
PowerPoint Pythonni o'rganamiz-2-qism
PowerPoint Pythonni o'rganamiz-1.zip
1.5 MB
PowerPoint Pythonni o'rganamiz-1
Pyton Misollar to'plami - 1.zip
99.3 KB
Python Misollar to'plami - 1