Percabangan adalah salah satu konsep fundamental dalam pemrograman yang memungkinkan program untuk mengambil keputusan berdasarkan kondisi tertentu. Dalam Python, percabangan dilakukan dengan menggunakan pernyataan if, elif, dan else.
If
if True:
print("Hi")
if
akan mengeksekusi perintah didalamnya jika hasilnya True
. Kode dibawah akan menampilkan “Bisa bikin KTP” tapi kalau umurnya dibawah 16 tidak menampilkan apapun.
umur = 17
if umur >= 17:
print("Bisa bikin KTP")
If Else
Jika if
hasilnya False
akan diteruskan ke else
.
umur = 15
if umur >= 17:
print("Boleh membuat KTP")
else:
print("Belum cukup umur")
Nested If
Kondisi dimana didalam if
terdapat if
lagi. Kode dibawah ini akan menampilkan “Ngak bisa join”, walaupun usinya mencukupi tetapi belum punya kamera. Akan menampilkan “Bisa join” jika usianya mencukupi minimal 17 tahun dan memiliki kamera.
usia = 17
punya_kamera = False
if usia >= 17:
if punya_kamera:
print("Bisa join")
else:
print("Ngak bisa join")
else:
print("Ngak bisa join")
Tetapi ada cara yang lebih simpel tanpa menggunakan nested yaitu penambahan operator and
.
usia = 17
punya_kamera = True
if usia >= 17 and punya_kamera:
print("Bisa join")
else:
print("Ngak bisa join")
Nested disarankan jika penggunaanya seperti ini
usia = 17
punya_kamera = False
if usia >= 17:
print("Usia lo dah cukup")
if punya_kamera:
print("Bisa join")
else:
print("Tapi lo ngak punya kamera, jadi ngak bisa join sorry")
else:
print("Ngak bisa join")
Elif
elif
digunakan jika kondisinya lebih dari 2.
umur = 16
if umur >= 18:
print("Lo dewasa, bro.")
elif umur >= 13:
print("Lo remaja, enjoy dulu!")
else:
print("Masih bocil, belajar yang rajin!")
Ternary
Ternary ini mirip seperti if else
namun versi yang satu baris, gunakan ternary untuk kondisi yang sederhana saja.
umur = 18
status = "Dewasa" if umur >= 17 else "Anak-anak"
print(status) # Output: Dewasa
Short-circuit Evaluation (AND)
Cara kerjanya jika kondisi pertama (paling kiri) nilainya True, akan mengeksekusi ekspresi berikutnya. Tapi, jika kondisi pertama False, ekspresi kedua tidak akan dicek bahkan dieksekusi.
is_show = True
is_show and print("Tampil") # Tampil
is_show = False
is_show and print("Tampil")
Short-circuit Evaluation (OR)
Kenapa kalau pakai OR tampil semua? Sebelumnya sudah dijelaskan dimateri sebelumnya yaitu operasi logika, dimana AND kedua kondisi harus True tapi kalau OR hanya butuh satu saja yang True untuk menghasilkan nilai True.
is_show = True
is_show or print("Tampil") # Tampil
is_show = False
is_show or print("Tampil") # Tampil