Belajar Python Perulangan For While

Belajar Python: Perulangan for dan while — Panduan Lengkap
Perulangan (looping) adalah teknik untuk mengeksekusi blok kode secara berulang selama kondisi tertentu terpenuhi. Python menyediakan dua jenis perulangan utama: for dan while.
Ini adalah materi yang menurut saya paling “memuaskan” saat pertama kali benar-benar paham — karena perulangan adalah cara komputer melakukan pekerjaan yang membosankan untuk kita. Salah satu program pertama yang saya buat adalah mencetak pola bintang seperti di artikel ini, dan rasanya luar biasa melihat hasilnya muncul dengan sendirinya.
1. Perulangan For
for digunakan untuk mengulangi iterasi terhadap suatu urutan (list, string, range, dll).
Sintaks Dasar
for item in urutan:
# blok kode yang diulang
Contoh: Iterasi List
buah = ["apel", "mangga", "jeruk", "pisang"]
for b in buah:
print(f"Saya suka {b}")
# Output:
# Saya suka apel
# Saya suka mangga
# Saya suka jeruk
# Saya suka pisang
range()
Fungsi range() menghasilkan deret angka:
# range(stop) — 0 sampai stop-1
for i in range(5):
print(i) # 0, 1, 2, 3, 4
# range(start, stop)
for i in range(2, 7):
print(i) # 2, 3, 4, 5, 6
# range(start, stop, step)
for i in range(0, 10, 2):
print(i) # 0, 2, 4, 6, 8
# Mundur
for i in range(10, 0, -1):
print(i) # 10, 9, 8, ..., 1
enumerate()
Dapatkan indeks dan nilai sekaligus:
buah = ["apel", "mangga", "jeruk"]
for i, b in enumerate(buah):
print(f"{i+1}. {b}")
# Output:
# 1. apel
# 2. mangga
# 3. jeruk
2. Perulangan While
while mengulang blok kode selama kondisi bernilai True:
counter = 1
while counter <= 5:
print(f"Iterasi ke-{counter}")
counter += 1
Hati-hati dengan infinite loop:
# ❌ Akan berjalan selamanya!
while True:
print("Terus...")
# ✅ Pastikan ada kondisi berhenti
while True:
perintah = input("Ketik 'exit' untuk keluar: ")
if perintah == "exit":
break
Infinite loop adalah pengalaman pertama yang hampir pasti dialami setiap orang yang belajar coding — program macet dan jendela terminal terus mencetak tanpa henti. Tenang, ini normal 🙂. Di VS Code, cukup tekan Stop (kotak merah di pojok) atau
Ctrl + Cdi terminal untuk menghentikannya. Setelah itu periksa kembali kondisi berhentinya.
3. Break dan Continue
break — Hentikan Perulangan
for i in range(1, 11):
if i == 5:
break
print(i) # 1, 2, 3, 4
continue — Lewati Iterasi
for i in range(1, 11):
if i % 2 == 0:
continue
print(i) # 1, 3, 5, 7, 9
4. Nested Loop
for i in range(1, 4):
for j in range(1, 4):
print(f"({i},{j})", end=" ")
print()
# (1,1) (1,2) (1,3)
# (2,1) (2,2) (2,3)
# (3,1) (3,2) (3,3)
Pola Bintang
# Segitiga siku
for i in range(1, 6):
print("*" * i)
# *
# **
# ***
# ****
# *****
5. List Comprehension — For Loop Satu Baris
Cara Pythonic untuk membuat list dari perulangan:
# Cara biasa
kuadrat = []
for i in range(1, 6):
kuadrat.append(i ** 2)
print(kuadrat) # [1, 4, 9, 16, 25]
# List comprehension
kuadrat = [i ** 2 for i in range(1, 6)]
print(kuadrat) # [1, 4, 9, 16, 25]
# Dengan kondisi
genap = [i for i in range(1, 11) if i % 2 == 0]
print(genap) # [2, 4, 6, 8, 10]
6. Loop dengan Dictionary
siswa = {"Andi": 85, "Budi": 92, "Cici": 78}
# Iterasi key
for nama in siswa:
print(nama)
# Iterasi value
for nilai in siswa.values():
print(nilai)
# Iterasi key-value
for nama, nilai in siswa.items():
print(f"{nama}: {nilai}")
7. Studi Kasus: Program Deret
# Menampilkan bilangan genap 1-20
print("Bilangan genap 1-20:")
for i in range(2, 21, 2):
print(i, end=" ")
print()
# Menjumlahkan 1-100
total = sum(range(1, 101))
print(f"Total 1+2+...+100 = {total}")
# Program tebak angka (while)
import random
angka_rahasia = random.randint(1, 10)
percobaan = 0
while True:
tebakan = int(input("Tebak angka (1-10): "))
percobaan += 1
if tebakan == angka_rahasia:
print(f"Benar! Percobaan ke-{percobaan}")
break
elif tebakan < angka_rahasia:
print("Terlalu kecil")
else:
print("Terlalu besar")
Kesimpulan
for— untuk iterasi data terstruktur (list, range, string)while— selama kondisi terpenuhibreak— hentikan paksa,continue— lompati iterasi- List comprehension — cara ringkas membuat list dari loop
- Hindari infinite loop dengan memastikan kondisi berhenti
Lanjutkan ke function dan lambda Python untuk membuat kode yang lebih terstruktur, atau pelajari list dan tuple untuk mengelola koleksi data.

