Alur kode kontrol dengan logika kondisional (jika, elif, lainnya)

Selesai

Tip

Lihat tab Teks dan gambar untuk detail selengkapnya!

Sekarang setelah program Anda dapat mengevaluasi kondisi, Anda dapat menggunakannya untuk memandu jalur yang dapat diambil kode Anda. Python menggunakan ifpernyataan , elif, dan else untuk memandu alur program Anda berdasarkan hasil True atau False. Pendekatan ini disebut logika bersyarkat.

Pernyataan if

Pernyataan if menjalankan blok kode hanya ketika kondisi adalah True. Kode di dalam harus diindentasi—Python menggunakan indentasi untuk mengetahui baris mana yang termasuk dalam blok:

score = 85

if score >= 90:
    print("Congratulations!")
    print("Grade: A")

print("Program complete.")

Jika score kurang dari 90, kode inden di dalam if blok dilewati, dan program berlanjut dengan baris berikutnya setelah blok.

Aturan indentasi dan titik dua

Python menggunakan aturan ketat untuk mengelompokkan blok kode bersama-sama:

  1. Titik dua (:): Anda harus menempatkan titik dua di akhir pernyataan kondisional. Itu memberi tahu Python bahwa baris inden berikutnya milik blok bersyarah itu.

  2. Indentasi: Setiap baris dalam blok yang sama harus menggunakan indentasi yang sama. Gunakan empat spasi (atau Tab) secara konsisten.

Untuk menyelesaikan blok kode, Anda harus membatalkan indentasi baris berikutnya setelah blok. Garis yang tidak terindentasi ini memberi sinyal ke Python bahwa blok telah berakhir. Dalam contoh di atas, baris print("Program complete.") tidak terindentasi, sehingga berjalan terlepas dari kondisinya if .

Menambahkan jalur alternatif dengan jalur lain

Gunakan else untuk menjalankan blok kode yang berbeda saat kondisinya adalah False:

score = 75

if score >= 90:
    print("Grade: A")
else:
    print("Grade: B or lower")

Kondisi penautan dengan elif

Ketika Anda memiliki lebih dari dua jalur yang mungkin, Anda dapat menggunakan elif (singkatan dari "jika lain") untuk memeriksa kondisi tambahan.

Kemenangan pertandingan pertama

Python memeriksa setiap kondisi secara berurutan. Ketika menemukan kondisi pertama True , ia menjalankan blok itu dan melewati sisanya. Jika tidak ada kondisi , Truemaka akan menjalankan else blok (jika ada).

score = 85

if score >= 90:
    print("Grade: A")
elif score >= 80:     # Python stops here! 85 >= 80 is True.
    print("Grade: B")
elif score >= 70:     # Skipped entirely, even though 85 >= 70 is also true.
    print("Grade: C")
else:                 # Skipped entirely.
    print("Grade: D or lower")

Output:

Grade: B

Karena Python keluar dari rantai setelah kondisi pertamaTrue, pastikan untuk memesan kondisi Anda dari yang paling spesifik hingga paling tidak spesifik. Jika tidak, Anda mungkin tidak pernah mencapai kondisi yang Anda harapkan.