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.

# Mendefinisikan Fungsi

Pelajari cara mendefinisikan fungsi dengan def, memanggilnya berkali-kali, menulis docstring, dan memahami None.

Buka →
# Parameter dan Argument

Bedakan parameter sebagai nama di definisi fungsi dan argument sebagai nilai saat pemanggilan, beserta aturannya.

Buka →
# Return Value

Pelajari cara mengembalikan nilai dari fungsi, perilaku return yang menghentikan eksekusi, dan bedanya dengan print.

Buka →
# Positional dan Keyword Arguments

Panggil fungsi dengan menyebut nama parameter agar kode lebih jelas, dan pahami aturan mencampur positional dan keyword.

Buka →
# Default Parameters

Beri nilai bawaan pada parameter fungsi, pahami urutan wajibnya, dan hindari jebakan mutable default yang klasik.

Buka →
# Arbitrary Arguments

Terima jumlah argument berapa pun dengan *args dan **kwargs, lalu pakai unpacking saat memanggil fungsi.

Buka →
# Positional-Only dan Keyword-Only Parameters

Kendalikan cara parameter dipanggil dengan penanda / dan * agar signature fungsi lebih jelas dan API lebih stabil.

Buka →
# Scope dan Namespace

Pahami aturan LEGB: bagaimana interpreter Python mencari nama variabel di scope lokal, enclosing, global, dan builtins.

Buka →
# local, global, dan nonlocal

Gunakan kata kunci global dan nonlocal untuk menulis variabel luar, kenali UnboundLocalError, dan praktik terbaiknya.

Buka →
# Recursion

Pelajari fungsi yang memanggil dirinya sendiri: base case, recursive case, RecursionError, dan kapan layak dipilih.

Buka →
# Lambda Functions

Tulis fungsi satu baris tanpa nama dengan lambda, gunakan sebagai key pada sorted, dan kenali batas keterbacaannya.

Buka →
# First-Class Functions

Perlakukan fungsi sebagai nilai: simpan di variabel, kirim sebagai argument, kembalikan dari fungsi lain.

Buka →
# Type Hints pada Fungsi

Tambahkan anotasi tipe pada parameter dan nilai balik fungsi sebagai dokumentasi dan dukungan alat bantu.

Buka →