Belajar Python Perulangan For While

| | Python
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 + C di 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 terpenuhi
  • break — 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.


Sigit Nurhanafi avatar
Full-stack developer & technical writer. Berpengalaman di PHP, Laravel, NodeJS, MySQL, dan Python. Aktif menulis tutorial pemrograman dan maintaining open-source projects di PemburuKode sejak 2021.