← Semua pembelajaran / Python Dasar
Fase 3 · Perulangan

while, break, dan continue

for untuk “ulangi tiap item”. while untuk “ulangi sampai sesuatu terjadi” — misalnya sampai pengguna memasukkan jawaban yang benar.

Sumber asli docs.python.org Resmi Rangkuman ~5 menit baca

Intisari

  • while kondisi: — blok diulang selama kondisinya masih True.
  • Sesuatu di dalam blok harus bisa membuat kondisi itu jadi salah, atau programmu tidak akan berhenti.
  • break keluar dari perulangan seketika. continue melompat ke putaran berikutnya.
  • Pola paling umum: while True: ditambah break saat syarat berhenti tercapai.
  • Perulangan tak berujung dihentikan dengan Ctrl+C di terminal.

for versus while

PakaiKalauContoh
forJumlah putaran sudah diketahuiProses 100 baris data, ulangi 5 kali
whileBerhenti tergantung sesuatu yang belum terjadiTanya terus sampai jawabannya benar

Kalau ragu, pakai for. Sebagian besar kebutuhan sehari-hari terpenuhi olehnya.

Bentuk dasar

hitung = 1

while hitung <= 5:
    print(hitung)
    hitung += 1        # ← tanpa baris ini, program tidak akan pernah berhenti

print("Selesai")

Alurnya: cek kondisi → kalau benar jalankan blok → kembali ke atas → cek lagi → dan seterusnya sampai kondisinya salah.

Perulangan tak berujung. Kalau kamu lupa hitung += 1, kondisinya selamanya benar dan program mencetak 1 tanpa henti. Tekan Ctrl+C di terminal untuk memaksanya berhenti. Ini bukan hal yang perlu ditakuti — semua orang pernah mengalaminya.

Kegunaan aslinya: menunggu input yang benar

jawab = ""

while jawab != "ya" and jawab != "tidak":
    jawab = input("Lanjutkan? (ya/tidak) ").lower()

print(f"Kamu menjawab: {jawab}")

Ini yang tidak bisa dikerjakan for: kamu tidak tahu pengguna akan salah ketik berapa kali.

break — keluar sekarang juga

while True:                            # sengaja selamanya
    perintah = input("Ketik perintah (atau 'keluar'): ")

    if perintah == "keluar":
        break                          # ← satu-satunya jalan keluar

    print(f"Menjalankan: {perintah}")

print("Sampai jumpa")

Pola while True: + break ini sangat umum dan justru lebih jelas dibanding memaksakan kondisi rumit di baris while. Syaratnya cuma satu: harus ada break yang benar-benar bisa tercapai.

continue — lewati putaran ini saja

for angka in [1, -2, 3, -4, 5]:
    if angka < 0:
        continue                # lompat ke item berikutnya
    print(angka)                # 1, 3, 5
Efek
breakKeluar dari perulangan sepenuhnya
continueBatalkan sisa putaran ini, lanjut ke putaran berikutnya

Keduanya bekerja di for maupun while.

Hati-hati continue di dalam while. Kalau baris penambah hitungan ikut terlewat, kamu membuat perulangan tak berujung:

i = 0
while i < 5:
    if i == 2:
        continue        # i tidak pernah bertambah → macet selamanya
    print(i)
    i += 1

Contoh utuh: tebak angka

import random

rahasia = random.randint(1, 100)
percobaan = 0

while True:
    tebakan = int(input("Tebak angka 1-100: "))
    percobaan += 1

    if tebakan < rahasia:
        print("Terlalu kecil")
    elif tebakan > rahasia:
        print("Terlalu besar")
    else:
        print(f"Benar! Dalam {percobaan} percobaan.")
        break

Latihan: buat kalkulator sederhana yang terus meminta dua angka dan satu operator, menampilkan hasilnya, lalu bertanya lagi — sampai pengguna mengetik selesai. Pastikan pembagian dengan nol tidak membuat programmu mati (petunjuk: cek dengan if sebelum membagi).

Rangkuman ini sengaja dipangkas ke bagian yang dipakai di roadmap. Buka sumber aslinya saat kamu butuh detail lengkap atau referensi parameter.