Materi Python: Perulangan & Fungsi

🐍 Perulangan & Fungsi dalam Python

Materi Pembelajaran Pemrograman Python — Kamis, 20 Agustus 2026

BAGIAN I — PERULANGAN (LOOPING)

Perulangan adalah struktur kontrol yang memungkinkan kita mengeksekusi sebuah blok kode berulang kali selama kondisi tertentu terpenuhi. Python menyediakan dua jenis perulangan utama: for dan while.

1.1 Perulangan for

Perulangan for digunakan untuk melakukan iterasi terhadap sebuah sequence (seperti list, tuple, string, atau range).

Sintaks dasar:

for variabel in sequence:
    # blok kode yang diulang

Contoh 1 — Iterasi pada list:

buah = ["apel", "mangga", "jeruk"]
for b in buah:
    print(b)
apel
mangga
jeruk

Contoh 2 — Menggunakan range():

# range(start, stop, step)
for i in range(1, 6):
    print("Angka:", i)
Angka: 1
Angka: 2
Angka: 3
Angka: 4
Angka: 5
💡 Catatan: Fungsi range(a, b) menghasilkan angka dari a sampai b-1 (nilai b tidak disertakan).

1.2 Perulangan while

Perulangan while akan terus mengeksekusi blok kode selama kondisinya bernilai True.

while kondisi:
    # blok kode yang diulang

Contoh:

hitung = 1
while hitung <= 5:
    print("Hitungan ke-", hitung)
    hitung += 1

1.3 Kontrol Perulangan: break, continue, dan pass

StatementFungsi
breakMenghentikan perulangan sepenuhnya
continueMelewati sisa iterasi saat ini, lanjut ke iterasi berikutnya
passPlaceholder kosong (tidak melakukan apa-apa)

Contoh break:

for i in range(10):
    if i == 5:
        break
    print(i)
0, 1, 2, 3, 4

Contoh continue — cetak hanya bilangan ganjil:

for i in range(10):
    if i % 2 == 0:
        continue
    print(i, end=" ")
1 3 5 7 9

1.4 Nested Loop (Perulangan Bersarang)

for i in range(1, 4):
    for j in range(1, 4):
        print(f"({i},{j})", end=" ")
    print()

1.5 Loop dengan else

Python memiliki fitur unik: blok else pada loop dijalankan ketika loop selesai secara normal (tanpa break).

for n in range(2, 10):
    if n % 7 == 0:
        print("Ditemukan kelipatan 7:", n)
        break
else:
    print("Tidak ada kelipatan 7")

BAGIAN II — FUNGSI (FUNCTION)

Fungsi adalah blok kode yang dapat digunakan kembali (reusable) untuk melakukan tugas tertentu. Fungsi membantu membuat program lebih terstruktur, mudah dibaca, dan efisien.

2.1 Mendefinisikan dan Memanggil Fungsi

def nama_fungsi(parameter):
    """Docstring: penjelasan fungsi"""
    # blok kode
    return nilai

Contoh sederhana:

def sapa(nama):
    """Menampilkan pesan sapaan"""
    print(f"Halo, {nama}! Selamat belajar Python.")

sapa("Budi")
sapa("Siti")

2.2 Parameter dan Argumen

JenisPenjelasanContoh
PositionalArgumen sesuai urutan parameterf(1, 2)
KeywordArgumen dengan nama parameterf(a=1, b=2)
DefaultParameter memiliki nilai bawaandef f(x=10):

Contoh dengan default parameter:

def luas_persegi(sisi, satuan="cm"):
    return f"{sisi**2} {satuan}²"

print(luas_persegi(5))          # 25 cm²
print(luas_persegi(5, "m"))    # 25 m²

2.3 *args dan **kwargs

Digunakan ketika jumlah argumen tidak ditentukan di awal.

# *args — menerima banyak argumen positional (tuple)
def jumlahkan(*angka):
    return sum(angka)

print(jumlahkan(1, 2, 3, 4))   # 10

# **kwargs — menerima banyak argumen keyword (dictionary)
def profil(**data):
    for kunci, nilai in data.items():
        print(f"{kunci}: {nilai}")

profil(nama="Andi", umur=20, kota="Bandung")

2.4 Return Value (Nilai Kembali)

Fungsi dapat mengembalikan satu atau lebih nilai menggunakan return.

def hitung_luas_keliling(p, l):
    luas = p * l
    keliling = 2 * (p + l)
    return luas, keliling   # mengembalikan tuple

l, k = hitung_luas_keliling(5, 3)
print(f"Luas: {l}, Keliling: {k}")

2.5 Scope (Lingkup Variabel)

  • Local scope: variabel yang didefinisikan di dalam fungsi
  • Global scope: variabel yang didefinisikan di luar fungsi
x = 10   # global

def tampilkan():
    y = 5   # local
    print("x =", x, "| y =", y)

tampilkan()
print(x)      # OK
# print(y)    # ERROR: y tidak dikenali di luar fungsi

2.6 Lambda Function (Fungsi Anonim)

Fungsi kecil tanpa nama, biasanya untuk operasi singkat.

# Sintaks: lambda argumen: ekspresi
kuadrat = lambda x: x ** 2
print(kuadrat(7))   # 49

tambah = lambda a, b: a + b
print(tambah(3, 4))  # 7

2.7 Contoh Lengkap: Kalkulator Sederhana

def kalkulator(a, b, operasi="tambah"):
    """Kalkulator sederhana dengan 4 operasi."""
    if operasi == "tambah":
        return a + b
    elif operasi == "kurang":
        return a - b
    elif operasi == "kali":
        return a * b
    elif operasi == "bagi":
        return a / b if b != 0 else "Error: bagi nol"
    else:
        return "Operasi tidak dikenali"

print(kalkulator(10, 5))             # 15
print(kalkulator(10, 5, "kali"))    # 50
print(kalkulator(10, 0, "bagi"))    # Error: bagi nol

📌 RINGKASAN

KonsepKata Kunci / SintaksKegunaan
For Loopfor ... in ...Iterasi sequence
While Loopwhile kondisi:Perulangan berbasis kondisi
Kontrol Loopbreak, continue, passMengatur alur perulangan
Fungsidef nama():Blok kode reusable
Returnreturn nilaiMengembalikan hasil fungsi
Lambdalambda x: x+1Fungsi anonim singkat
🎯 Tips Belajar: Praktikkan setiap contoh di atas dengan memodifikasi nilai dan kondisinya. Pemahaman terbaik datang dari eksperimen langsung!