Python: Function & Anonymous Function
Pada kondisi tertentu, terutama ketika membuat program yang kompleks, diperlukan suatu blok kode yang dapat diakses berkali-kali. Hal ini bertujuan untuk mempermudah dalam me-maintenance program yang dibuat. Pada kondisi seperti ini Function adalah solusinya. Function merupakan blok kode yang berisi proses kerja atau alur dari suatu program.
Ada beberapa variasi dari Function berdasarkan pada penggunaannya, dan Function hanya akan bekerja sesudah didefinisikan kemudian dipanggil.
Ini contoh variasinya:
Function — dengan sintaks: def
- Function (def) bentuk dasar dicirikan dengan format seperti berikut ini:
- Function (def) dengan argumen yang biasanya digunakan apabila terdapat suatu nilai sebagai masukannya, dan argumen yang digunakan bisa lebih dari satu. Function bentuk ini dicirikan seperti berikut:
FYI:
suatu Function yang tidak diberi keyword return bisa disebut sebagai procedure
- Function (def) dengan keyword
return
yang dapat mengembalikan nilai dari variabel lokal tertentu yang dapat digunakan jika diperlukan. - Kunjungi Python: Variabel & Operasi untuk memahami perbedaan antara variabel lokal dengan variabel global.
Berikut merupakan contoh dari function dengan keywordreturn
:
dalam pengaplikasian Function juga terdapat beberapa aturan yang harus dipenuhi agar tidak terjadi error, misal:
- Argumen NON-DEFAULT harus didefinisikan sebelum argumen DEFAULT, contohnya seperti berikut ini:
r
merupakan argumen NON-DEFAULT danphi
merupakan argumen DEFAULT karena sudah diberi nilai saat pendeklarasian Function. Oleh karena itu, pengisian nilai pada argumenphi
menjadi opsional.
Function — dengan sintaks: lambda
Function jenis ini umumnya disebut dengan Anonymous Function, dinamai demikian karena pada strukturnya tidak memerlukan nama_function seperti contoh-contoh sebelumnya. Selain itu, Anonymous/Lambda Function hanya terdiri atas satu baris kode.
Terus, bagaimana cara manggilnya kalau tidak punya nama? Tenang. Pythoneers bisa membuat variabel untuk menampung operasi atau perintah yang dilakukan. Seperti berikut ini:
Selain dengan cara seperti di atas, Lambda Function juga bisa dieksekusi dengan cara memanggil langsung nilai yang ingin diolah. Misalkan:
Mungkin ada yang bertanya-tanya
kapan sih perlu pakai Lambda Function?
Penggunaan Lambda Function hanya diperlukan pada kondisi tertentu saja yang cukup dengan satu baris kode. Contohnya ketika menggunakan Function built-in atau bawaan milik Python: filter()
maupun map()
yang memerlukan parameter berupa Function lain. Ini contohnya:
Contoh di atas menggunakan operasi modulo, jika belum familiar, silakan bisa kenalan di Python: Variabel & Operasi.
Sekian, seri berikutnya akan dibahas mengenai Percabangan atau yang umumnya dikenal sebagai if-else. Cheers.
Terima kasih!