Conditions: if, then, else - Learn Python 3 - Snakify

Lesson 3
Koşullar: eğer-o-else


1. Sözdizimi

İlk dersteki tüm programlar sıralı olarak satırdan sonra yürütülmüştür. Hiçbir satır atlanamaz.

Şu sorunu ele alalım: verilen tamsayı X için mutlak değerini belirleyin. Eğer X> 0 ise, program X değerini yazmalıdır, aksi takdirde -X yazmalıdır. Bu davranış sıralı program kullanılarak ulaşılamıyor. Program şartlı olarak bir sonraki adımı seçmelidir. Koşullar şu şekilde yardımcı oluyor:

x = int(input())
if x > 0:
    print(x)
else:
    print(-x)

Bu program bir koşullu deyimi kullanır if . Sonra if bir koşul koymak (x > 0) iki nokta üst üste takip. Bundan sonra, yalnızca durum doğruysa (yani True değerlendirilirse) yürütülecek bir talimatlar bloğu koyarız. Bu bloğu else , harf, kolon ve yalnızca koşul yanlışsa (yani False değerlendirilirse) çalıştırılacak olan bir başka talimat bloğu takip edebilir. Yukarıdaki durum, koşul yanlış, yani 'else' bloğu yürütülür. Her blok boşluklar kullanılarak girintili olmalıdır.

Özetle, Python'daki koşullu deyim aşağıdaki sözdizimine sahiptir:

if condition :
    true-block
    several instructions that are executed
    if the condition evaluates to True
else:
    false-block
    several instructions that are executed
    if the condition evaluates to False

'Yanlış' bloğuna sahip else anahtar kelime, koşul yanlışsa hiçbir şey yapılmaması durumunda ihmal edilebilir. Örneğin, x değişkenini mutlak değeriyle şu şekilde değiştirebiliriz:

x = int(input())
if x < 0:
    x = -x
print(x)

Bu örnekte, x değişkeni sadece x < 0 ise -x olarak atanır. Tersine, her defasında print(x) yürütülür, çünkü girintisiz değildir, dolayısıyla 'gerçek' bloğa ait değildir.

Girinti, kod bloklarını ayırmak için Python'da genel bir yoldur. Aynı blok içindeki tüm talimatlar aynı şekilde girilmelidir, yani satırın başında aynı sayıda alana sahip olmalıdır. Girinti için 4 boşluk kullanılması önerilir.

Girinti, Python'u diğer dillerden farklı kılan şeydir, ki burada kaşlı ayraçlar { ve } blokları oluşturmak için kullanılır.

Bu arada, Python'da mutlak değer için bir yerleşik işlev var:

x = int(input())
print(abs(x))
Advertising by Google, may be based on your interests

2. İç içe koşullar

Herhangi bir Python komutu, başka bir koşullu ifade de dahil olmak üzere, 'gerçek' bloklara ve 'false' bloğuna yerleştirilebilir. Bu şekilde iç içe koşullara geçiyoruz. İç koşulların blokları, iki kez daha fazla boşluk (örneğin 8 boşluk) kullanılarak girintilidir. Bir örnek görelim. Düzlemdeki noktanın koordinatları verildiğinde, çeyreğini yazdırın.

x = int(input())
y = int(input())
if x > 0:
    if y > 0:
        # x 0&#39;dan büyük, y 0&#39;dan büyüktür
        print("Quadrant I")
    else:    
        # x 0&#39;dan büyük, y 0&#39;dan küçük veya eşittir
        print("Quadrant IV")
else:
    if y > 0:
        # x 0&#39;dan küçük veya eşittir, y 0&#39;dan büyüktür
        print("Quadrant II")
    else:    
        # x 0&#39;dan küçük veya eşittir, y 0&#39;dan küçük veya eşittir
        print("Quadrant III")

Bu örnekte yorumları kullanacağız: Program yürütme üzerinde etkisi olmayan açıklayıcı metin. Bu metin hash # ile başlar ve çizginin sonuna kadar sürer.

Advertising by Google, may be based on your interests

3. Karşılaştırma operatörleri

Genellikle, aşağıdaki işleçlerden biri veya daha fazlası if aşağıdaki koşullar geçerlidir:

<
az - Sol taraf sağdan daha azsa durum doğrudur.
>
büyük - Sol taraf sağdan büyükse durum doğrudur.
<=
daha az veya eşit.
>=
daha büyük veya eşit.
==
eşit.
!=
eşit değil.

Örneğin durum x * x < 1000 anlamına gelen “ifadesinin değeri x * x en az 1000 olan” ve durum 2 * x != y değişken bölgesinin iki değeri”terimi x değerine eşit değildir Değişken y ”.

Python'daki karşılaştırma operatörleri aşağıdaki gibi birlikte gruplandırılabilir: a == b == c veya x <= y >= 10 . Programlama dilleri arasında nadir bir şey.

Advertising by Google, may be based on your interests

4. Boole nesneleri ve mantıksal operatörler

2 + 5 gibi + operatörünü kullanarak iki tamsayı nesneyi topladığımızda, yeni bir nesne alırız: 7 . Aynı şekilde, < operatörünü 2 < 5 gibi kullanarak iki tam sayıyı karşılaştırdığımızda, yeni bir nesne alırız: True .

print(2 < 5)
print(2 > 5)
True ve False nesneler, bool adı verilen özel bir türe sahiptir. Her tür isim, bu türdeki nesnelere dökülmek için kullanılabileceği için, bu dökümün sayılara ne verdiğini görelim:
print(bool(-10))    # Doğru
print(bool(0))      # Yanlış - sıfır tek yanlış sayıdır
print(bool(10))     # Doğru

print(bool(''))     # Yanlış - boş dize tek yanlış dizedir
print(bool('abc'))  # Doğru

Bazen birkaç koşulu bir kerede kontrol etmeniz gerekir. Örneğin, n sayısının 2 ile bölünebileceğini kontrol edebilirsiniz n % 2 == 0 koşulunu ( n , 2 bölerek kalan 0 değerini verir). İki sayının n ve m 2'ye bölünebildiğini kontrol etmeniz gerekiyorsa, n % 2 == 0 ve m % 2 == 0 öğelerini de kontrol etmelisiniz. Bunu yapmak için, bunları Operatör kullanarak katılmak and : (mantıksal AND) n % 2 == 0 and m % 2 == 0 .

Python mantıklı AND, mantıksal OR ve olumsuzlama vardır.

Operatör and değerlendirmesi yapan bir ikili operatörüdür True ve sol taraftaki ve sağ taraftaki her ikisi yalnızca eğer True .

Operatör or değerlendirmesi yapan bir ikili operatörüdür True yanlarından en az birinin ise True .

Operatör not bazı değeri ardından ediyor, bir tekli olumsuzluk olduğunu. Bu değer False ve tersi True değerlendirilir.

İki sayının en az birinin 0 ile bittiğini kontrol edelim:

a = int(input())
b = int(input())
if a % 10 == 0 or b % 10 == 0:
    print('YES')
else:
    print('NO')

Numarası o kontrol edelim a pozitiftir ve sayı b negatif olmayan geçerli:

if a > 0 and not (b < 0):

not (b < 0) yerine yazabiliriz (b >= 0) .

Advertising by Google, may be based on your interests

5. 'elif' sözcüğü

Koşullu operatörü kullanarak ayrı ayrı anlatmak için ikiden fazla seçeneğiniz if... elif... else ifadesini kullanabilirsiniz.

Yukarıdaki örnekte, düzlemdeki nokta (x, y) ve yukarıdan gelen çeyrekler ile örneği yeniden yazarak nasıl çalıştığını gösterelim:

x = int(input())
y = int(input())
if x > 0 and y > 0:
    print("Quadrant I")
elif x > 0 and y < 0:
    print("Quadrant IV")
elif y > 0:
    print("Quadrant II")
else:
    print("Quadrant III")

Bu durumda, ilk gerçek koşul bulunana kadar if ve elif koşullar birbiri ardına kontrol edilir. O zaman bu koşul için sadece gerçek blok yürütülür. Eğer tüm koşullar yanlış ise, mevcut ise 'else' bloğu yürütülür.

Advertising by Google, may be based on your interests