11.1 Ternar operator
Python-da belə bir şey var - ternar operator, əslində bu dəyişdirilmiş operator if
else
kimi bir şeydir.
Tutalım sizdə belə bir kod var:
if a < b:
min = a
else:
min = b
Belə sadə kod çox yer tutmasın deyə, onun üçün daha qısa yazılış fikirləşiblər. Bu belə görünür:
min = a if a < b else b
Ternar operatorunun ümumi görünüşünü bu formada təsvir etmək olar:
dəyişən = dəyər1 if şərt else dəyər2
Əgər şərt doğru isə, dəyişənə dəyər1 təyin olunur, əgər yalnışdırsa — dəyər2.
Diqqət yetirin ki, burada şərtdən sonra iki nöqtə qoyulmur.
11.2 Dövrlərdə else operatoru
Python-da else
operatoru çox vaxt if
şərt operatorları ilə assosiasiya olunur. Amma istifadəsi bununla məhdudlaşmır və else
həmçinin for
və while
dövrlərində də tətbiq oluna bilər.
Dövrlər kontekstində else
-in bu qeyri-aşkar aspekti yeni başlayanları çaşdıra bilər, amma bu, proqramın axını idarə etmək üçün maraqlı imkanlar açır.
else
-in dövrlərdə necə işlədiyi
Dövrlərdə else
dövrün tamamlanmasından sonra işləyir, amma təkcə dövr normal şəkildə başa çatırsa (yəni break
operatoru ilə dayandırılmayıbsa). Bu xüsusiyyət else
-ni dövrün vaxtından əvvəl dayandırılıb-dayandırılmadığını yoxlamaq lazım olan ssenarilər üçün əlverişli edir.
For dövründə istifadə nümunəsi:
for i in range(3):
password = input('Şifrəni daxil edin: ')
if password == 'sekret':
print('Şifrə qəbul olundu.')
break
else:
print('Heç bir giriş cəhdi yoxdur və ya bütün daxil edilmiş şifrələr səhvdir.')
Burada else
, istifadəçi üç dəfə səhv şifrə daxil edərsə icra olunur. İstifadəçi düzgün şifrə daxil edərsə, dövr break
ilə dayandırılır və else
bloku icra olunmur.
While dövründə istifadə nümunəsi:
n = 5
while n > 0:
print(n)
n -= 1
else:
print('Dövr normal şəkildə sona çatdı.')
Bu halda else
, dövr təbii şəkildə, yəni şərt yalan olduqdan sonra tamamlanır və icra olunur.
Praktiki əhəmiyyəti
Dövrlərdə else
-dən istifadə axtarış alqoritmlərində xüsusilə faydalı ola bilər, burada axtarışın uğurlu olub-olmadığını müəyyən etmək lazımdır. Məsələn, siyahıda mövcud olmayan elementi axtararkən, dövr tamamlandıqdan sonra uğursuzluq mesajını çıxarmaq üçün else
-dən istifadə etmək olar.
Dövrlərdə else
-dən aydın və ardıcıl şəkildə istifadə edin ki, kodunuzu oxuyanları çaşdırmayasınız. Unutmayın ki, dövrlərdə else
həmişə intuitiv aydın olmaya bilər, ona görə də şərhlər əlavə etmək və ya məntiqinizi həyata keçirmək üçün başqa yollar seçmək, əgər bu kodu daha başa düşülən edirsə, arzuolunandır.
11.3 İç içə döngülər
Python-da çox kompleks məntiqi çox qısa şəkildə yazmaq olar. Bəzi hallarda sizə iç içə if-lər lazım olacaq, başqa hallarda isə iç içə döngülər. İndi onların iş prinsipinin bəzi nüanslarından danışacağıq:
İç içə döngü bir döngünün digərinin içində yerləşdiyini bildirir. Məsələn, çoxölçülü massivləri, siyahıların siyahısını və ya digər iç içə verilənlər strukturlarını işləmək üçün istifadə edilə bilər.
İç içə döngülər xarici döngüdən və bir və ya artıq daxili döngülərdən ibarətdir. Xarici döngü hər dəfə bir iterasiya etdikdə, daxili döngü tam şəkildə icra olunur:
for i in range(3): # Xarici döngü
for j in range(3): # Daxili döngü
print(f"({i}, {j})")
Xarici döngü baxımından, daxili döngü və onun tərkibi sadəcə komanda blokudur ki, onlar xarici döngünün hər bir iterasiyası üçün icra olunur. Xarici döngüyə daxildə nə baş verdiyi, neçə döngünün olduğu və s. heç də əhəmiyyətli deyil. O, sadəcə öz daxili komanda blokunu siyahısından dəyişən üçün hər dəfə icra edir.
İndi ekranın üzərinə çoxaltma cədvəli
çıxaraq — iç içə döngülər bu tapşırıq üçün mükəmməl uyğun gəlir. İç içə döngülərlə çoxaltma cədvəli yaratmaq, burada bir döngü çoxaldanı, digəri çoxalanı idarə edir:
n = 5
for i in range(1, n + 1):
for j in range(1, n + 1):
print(f"{i} * {j} = {i * j}", end='\t')
print() # Növbəti çoxaldan üçün yeni sətirə keçid
Bu nümunə ekrana belə bir cədvəl çıxaracaq:
1 * 1 = 1 1 * 2 = 2 1 * 3 = 3 1 * 4 = 4 1 * 5 = 5
2 * 1 = 2 2 * 2 = 4 2 * 3 = 6 2 * 4 = 8 2 * 5 = 10
3 * 1 = 3 3 * 2 = 6 3 * 3 = 9 3 * 4 = 12 3 * 5 = 15
4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16 4 * 5 = 20
5 * 1 = 5 5 * 2 = 10 5 * 3 = 15 5 * 4 = 20 5 * 5 = 25
İç içə döngüləri daha yaxşı başa düşmək üçün sadəcə daha çox praktika etməlisiniz — bu, proqramlaşdırmada hər hansı qeyri-aydın şeyi öyrənmək üçün ən sürətli yoldur.
GO TO FULL VERSION