Skip to content

Python - For Tsikllari

Python For Tsikllari

for tsikli ketma-ketlik (ya'ni ro'yxat, tuple, lug'at, set yoki satr) bo'ylab aylanish uchun ishlatiladi.

Bu boshqa dasturlash tillaridagi for kalit so'ziga o'xshamaydi va ko'proq obyektga yo'naltirilgan dasturlash tillarida topiladigan iterator metodiga o'xshab ishlaydi.

for tsikli yordamida biz ro'yxat, tuple, set va hokazolardagi har bir element uchun bir qator iboralarni bir marta bajarishimiz mumkin.

Misol

Mevalar ro'yxatidagi har bir mevani chop etish:

python
mevalar = ["olma", "banan", "gilos"]
for x in mevalar:
    print(x)

for tsikli oldindan indekslash o'zgaruvchisini o'rnatishni talab qilmaydi.

Satr Bo'ylab Aylanish

Hatto satrlar ham aylantiriladigan obyektlar bo'lib, ular belgilar ketma-ketligini o'z ichiga oladi:

Misol

"banan" so'zidagi harflarni chop etish:

python
for x in "banan":
    print(x)

Break Ibora

break iborasi yordamida tsiklni barcha elementlar bo'ylab aylanishidan oldin to'xtatishimiz mumkin:

Misol

x "banan" bo'lganda tsiklni tark etish:

python
mevalar = ["olma", "banan", "gilos"]
for x in mevalar:
    print(x)
    if x == "banan":
        break

Misol

x "banan" bo'lganda tsiklni tark etish, lekin bu safar break chop etishdan oldin keladi:

python
mevalar = ["olma", "banan", "gilos"]
for x in mevalar:
    if x == "banan":
        break
    print(x)

Continue Ibora

continue iborasi yordamida tsiklning joriy iteratsiyasini to'xtatib, keyingi iteratsiyaga o'tishimiz mumkin:

Misol

"banan" ni chop etmaslik:

python
mevalar = ["olma", "banan", "gilos"]
for x in mevalar:
    if x == "banan":
        continue
    print(x)

range() Funksiyasi

Kod to'plamini belgilangan miqdorda aylanib o'tish uchun range() funksiyasidan foydalanishimiz mumkin.

range() funksiyasi standart bo'yicha 0 dan boshlanadigan va 1 ga oshiriladigan (standart bo'yicha) raqamlar ketma-ketligini qaytaradi va ko'rsatilgan raqamda tugaydi.

Misol

range() funksiyasidan foydalanish:

python
for x in range(6):
    print(x)

Eslatma: range(6) 0 dan 6 gacha qiymatlar emas, balki 0 dan 5 gacha qiymatlardir.

range() funksiyasi standart bo'yicha 0 dan boshlanadi, lekin boshlang'ich qiymatni parameter qo'shib ko'rsatish mumkin: range(2, 6), bu 2 dan 6 gacha qiymatlarni anglatadi (lekin 6 kiritilmaydi):

Misol

Boshlang'ich parametr bilan:

python
for x in range(2, 6):
    print(x)

range() funksiyasi ketma-ketlikni 1 ga oshiradi, lekin uchinchi parameter qo'shib oshirish qiymatini ko'rsatish mumkin: range(2, 30, 3):

Misol

Ketma-ketlikni 3 ga oshirish (standart 1):

python
for x in range(2, 30, 3):
    print(x)

For Tsiklida Else

for tsiklidagi else kalit so'zi tsikl tugaganda bajariladigan kod blokini belgilaydi:

Misol

0 dan 5 gacha bo'lgan barcha raqamlarni chop etish va tsikl tugaganda xabarni chop etish:

python
for x in range(6):
    print(x)
else:
    print("Nihoyat tugadi!")

Eslatma: Agar tsikl break iborasi bilan to'xtatilsa, else bloki bajarilmaydi.

Misol

x 3 ga teng bo'lganda tsiklni to'xtatish va else bloki bilan nima bo'lishini ko'rish:

python
for x in range(6):
    if x == 3: break
    print(x)
else:
    print("Nihoyat tugadi!")

Ichki Tsikllar

Ichki tsikl bu tsikl ichidagi tsikldir.

"Ichki tsikl" har bir tashqi tsikl iteratsiyasi uchun bir marta bajariladi:

Misol

Har bir meva uchun har bir sifatni chop etish:

python
sifatlar = ["qizil", "katta", "mazali"]
mevalar = ["olma", "banan", "gilos"]

for x in sifatlar:
    for y in mevalar:
        print(x, y)

Pass Ibora

for tsikllari bo'sh bo'la olmaydi, lekin agar biron sababga ko'ra ichida hech narsa bo'lmagan for tsiklingiz bo'lsa, xatolikni oldini olish uchun pass iborasini qo'ying.

Misol

python
for x in [0, 1, 2]:
    pass