Daftar Referensi Python
Argumen default memberi parameter sebuah nilai bawaan, sehingga argumen itu boleh dilewati saat memanggil fungsi. Keyword argument berarti memanggil fungsi dengan menyebut nama parameternya — urutannya jadi bebas.
Sintaks
def nama_fungsi(wajib, opsional="nilai default"):
...
nama_fungsi("isi", opsional="ganti") # keyword argument
Aturan
| Aturan | Keterangan |
|---|---|
| Posisi parameter default | Harus setelah semua parameter wajib: def f(a, b=1) benar, def f(a=1, b) → SyntaxError |
| Urutan keyword argument | Bebas: f(b=2, a=1) sama dengan f(a=1, b=2) |
| Posisi + keyword dicampur | Boleh, tapi argumen posisi harus lebih dulu: f(1, b=2) |
Contoh
def sapa(nama="Teman"):
print(f"Halo, {nama}!")
sapa("Rina")
sapa()
Output:
Halo, Rina!
Halo, Teman!
Contoh Lainnya
Campuran parameter wajib dan default
def pesan_kopi(ukuran, gula="sedikit"):
print(f"Kopi {ukuran}, gula {gula}")
pesan_kopi("besar")
pesan_kopi("kecil", "banyak")
Output:
Kopi besar, gula sedikit
Kopi kecil, gula banyak
Keyword argument: urutan bebas
def biodata(nama, umur, kota):
print(f"{nama}, {umur} tahun, dari {kota}")
biodata(umur=25, kota="Bandung", nama="Rina")
Output:
Rina, 25 tahun, dari Bandung
Lompati satu default, isi yang lain
def daftar(nama, kelas="9A", hadir=True):
print(nama, kelas, hadir)
daftar("Budi", hadir=False)
Output:
Budi 9A False
Tanpa keyword, hadir=False tidak bisa diisi kecuali kelas ikut ditulis — di sinilah keyword argument berguna.
Kesalahan Umum
- Parameter default sebelum parameter wajib:
def f(a=1, b)→SyntaxError. - Argumen posisi setelah keyword:
f(a=1, 2)→SyntaxError. - Tidak mengisi argumen wajib →
TypeError: missing required argument. - Jangan pakai default yang mutable seperti
def f(data=[])— list yang sama dipakai ulang di semua pemanggilan, isinya menumpuk. Pakaidata=Nonelalu buat list di dalam fungsi.
Pelajari Lebih Lanjut
- Tutorial: Fungsi di Python (def)
- Referensi: Fungsi di Python · return di Python · lambda di Python
- Buku Belajar Python untuk Pemula: Bab 11
