Fungsi adalah cara utama mengemas logika agar dapat dipakai ulang dan diuji. Section ini membahas definisi fungsi, berbagai bentuk parameter, aturan scope, recursion, lambda, hingga type hints pada fungsi.
Pelajari cara mendefinisikan fungsi dengan def, memanggilnya berkali-kali, menulis docstring, dan memahami None.
Buka → # Parameter dan ArgumentBedakan parameter sebagai nama di definisi fungsi dan argument sebagai nilai saat pemanggilan, beserta aturannya.
Buka → # Return ValuePelajari cara mengembalikan nilai dari fungsi, perilaku return yang menghentikan eksekusi, dan bedanya dengan print.
Buka → # Positional dan Keyword ArgumentsPanggil fungsi dengan menyebut nama parameter agar kode lebih jelas, dan pahami aturan mencampur positional dan keyword.
Buka → # Default ParametersBeri nilai bawaan pada parameter fungsi, pahami urutan wajibnya, dan hindari jebakan mutable default yang klasik.
Buka → # Arbitrary ArgumentsTerima jumlah argument berapa pun dengan *args dan **kwargs, lalu pakai unpacking saat memanggil fungsi.
Buka → # Positional-Only dan Keyword-Only ParametersKendalikan cara parameter dipanggil dengan penanda / dan * agar signature fungsi lebih jelas dan API lebih stabil.
Buka → # Scope dan NamespacePahami aturan LEGB: bagaimana interpreter Python mencari nama variabel di scope lokal, enclosing, global, dan builtins.
Buka → # local, global, dan nonlocalGunakan kata kunci global dan nonlocal untuk menulis variabel luar, kenali UnboundLocalError, dan praktik terbaiknya.
Buka → # RecursionPelajari fungsi yang memanggil dirinya sendiri: base case, recursive case, RecursionError, dan kapan layak dipilih.
Buka → # Lambda FunctionsTulis fungsi satu baris tanpa nama dengan lambda, gunakan sebagai key pada sorted, dan kenali batas keterbacaannya.
Buka → # First-Class FunctionsPerlakukan fungsi sebagai nilai: simpan di variabel, kirim sebagai argument, kembalikan dari fungsi lain.
Buka → # Type Hints pada FungsiTambahkan anotasi tipe pada parameter dan nilai balik fungsi sebagai dokumentasi dan dukungan alat bantu.
Buka →