Python Def: Contoh Penggunaan dan Fungsi Return

Apa itu Python def dan bagaimana contoh penggunaannya? Simak artikel berikut!
RevoU Staff
July 26, 2023
6
min read

Mau Belajar

Data Analytics

?

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!
DAFTAR FULL PROGRAMCOBA COURSE GRATIS

Overview

Fungsi dalam Python yang didefinisikan menggunakan kata kunci def adalah instrumen penting yang memungkinkan kita menulis dengan lebih modular dan efisien. Fungsi memungkinkan kita untuk mengelompokkan kode dalam blok yang dapat digunakan kembali, sehingga memudahkan debugging dan pemeliharaan kode.

Salah satu aspek penting dari Python dan bahasa pemrograman pada umumnya adalah konsep fungsi.

Fungsi adalah blok kode yang dapat digunakan kembali, memungkinkan kita menulis kode yang lebih efisien dan mudah dibaca. 

Jika kamu pernah menulis kode Python atau bahkan jika kamu baru saja memulainya, kamu mungkin telah melihat kata kunci def. Kata kunci ini digunakan untuk mendefinisikan fungsi di Python.

Tapi apa sebenarnya arti dari def ini? Bagaimana cara kerja dan penggunaan fungsi untuk membuat kode yang lebih baik?

Di artikel berikut, kamu akan menjelajahi def dan fungsi di Python. Dengan memahami konsep ini, kita akan membuat kode menjadi lebih rapi, lebih modular, dan lebih mudah untuk di-debug. Selamat membaca!

Pengertian Fungsi dalam Python dan Def Keyword

Kita perlu mengetahui berbagai jenis alat yang bisa membantu menganalisis dan mengolah data secara efisien. Salah satu alat tersebut adalah fungsi dalam Python yang didefinisikan menggunakan keyword 'def'.

Function atau fungsi dalam Python adalah blok kode terorganisir dan dapat digunakan kembali untuk melakukan tindakan tertentu.

Berbeda dari potongan kode lainnya, fungsi dalam Python dapat melakukan tugas spesifik dan kemudian mengembalikan hasilnya. Artinya, kita dapat mengisolasi bagian kode untuk melakukan tugas tertentu, lalu menggunakan ulang bagian tersebut di tempat lain dalam program kita.

Fungsi membantu dalam mengorganisir kode dengan cara memecahnya menjadi bagian-bagian kecil, di mana setiap bagian mengerjakan tugas tertentu.

Konsep ini membantu kita dalam memahami, mengedit, dan men-debug kode dengan lebih maksimal. Selain itu, menggunakan fungsi juga bisa membuat kode kita lebih ringkas, lebih mudah dibaca, dan lebih mudah di-maintenance.

Keyword 'def' menjadi kata kunci yang paling banyak digunakan dalam Python karena fungsi berperan penting dalam struktur dan logika dari kode yang kita tulis. Saat kita menulis 'def' diikuti oleh nama fungsi dan tanda kurung (), Python mengerti bahwa kita sedang mendefinisikan sebuah fungsi. 

Misalnya, 'def analisis_data():' akan mendefinisikan sebuah fungsi dengan nama 'analisis_data'.

Syntax Python Def dan Cara Membuatnya

Untuk membuat fungsi di Python, kamu bisa menggunakan kata kunci 'def' diikuti dengan nama fungsi dan tanda kurung yang berisi parameter (jika diperlukan). Setelahnya, akhiri dengan titik dua (:).

Blok kode yang menjalankan tugas khusus dari fungsi tersebut ditulis pada baris baru dengan indentasi (penulisan yang menjorok ke dalam).

Berikut adalah syntax dasarnya:

Berikut adalah langkah-langkah dalam mendefinisikan fungsi:

  • Tentukan nama fungsi: kamu bisa memberikan nama apa pun untuk fungsi kamu, asalkan sesuai dengan aturan penamaan dalam Python. Biasanya, nama fungsi harus berupa huruf atau garis bawah (_), tidak boleh dimulai dengan angka, dan Python case-sensitive. Artinya, huruf besar dan kecil dianggap berbeda.
  • Tentukan parameter: parameter adalah input untuk fungsi. Kamu bisa menentukan sebanyak mungkin parameter sesuai kebutuhan. Jika tidak memerlukan parameter, kamu bisa membuat fungsi dengan tanda kurung kosong.
  • Buat blok kode fungsi: bagian ini adalah operasi yang ingin kamu lakukan. Blok kode fungsi bisa berupa operasi matematika, manipulasi string, operasi logika, dan sebagainya.
  • Tentukan output dengan 'return': fungsi dapat menghasilkan output menggunakan kata kunci 'return'. Setelah menjumpai 'return', Python akan keluar dari fungsi dan menghasilkan nilai tersebut.

Cara Memanggil Fungsi yang Telah Didefinisikan

Setelah kita mendefinisikan fungsi dalam Python menggunakan keyword 'def', kita bisa memanggil fungsi tersebut untuk menjalankan blok kode yang ada di dalamnya.

Cara memanggil fungsi cukup sederhana, kita hanya perlu menuliskan nama fungsi yang telah didefinisikan sebelumnya lalu diikuti oleh tanda kurung (). Jika fungsi tersebut memerlukan parameter, kita perlu memasukkan nilai-nilai parameter tersebut dalam tanda kurung.

Berikut adalah format dasarnya:

Sebagai contoh, mari kita ambil fungsi tambah yang telah didefinisikan sebelumnya:

Untuk memanggil fungsi, kita dapat melakukannya seperti ini:

Dalam kasus di atas, kita memanggil fungsi tambah dengan dua argumen, yaitu 7 dan 3. Fungsi tersebut kemudian menjumlahkan kedua angka ini dan mengembalikan hasilnya.

Jika kita memiliki fungsi lebih kompleks yang beroperasi pada data dalam bentuk tabel, kita bisa memanggil fungsi tersebut dengan cara yang sama. Misalnya, kita memiliki fungsi yang menghitung rata-rata dari kolom data dalam format tabel teks. Kita bisa memanggil fungsi tersebut dengan memasukkan data tabel sebagai argumen.

Parameter dan Argumen dalam Fungsi

Dalam konteks fungsi Python, istilah parameter dan argumen sering digunakan. Kedua istilah ini merujuk pada variabel yang digunakan dalam definisi dan panggilan fungsi, tetapi mereka memiliki perbedaan.

Parameter adalah variabel yang kita deklarasikan dalam definisi fungsi. Mereka bertindak seperti "variabel placeholder" untuk mewakili data yang akan kita operasikan dalam fungsi. Sebagai contoh:

Variabel angka1 dan angka2 adalah parameter.

Sementara itu, argumen adalah nilai yang kita berikan saat memanggil fungsi. Dalam konteks ini, argumen adalah data aktual yang kita masukkan ke dalam fungsi. Misalnya:

Angka 3 dan 7 disebut argumen fungsi.

{{COMPONENT_IDENTIFIER}}

Selanjutnya, mari kita bahas cara pemberian input dan parameter yang dapat digunakan dalam fungsi Python:

  • Positional arguments: argumen posisional adalah argumen yang nilainya ditentukan berdasarkan posisinya. Misalnya, dalam fungsi tambah(a, b), saat kita memanggil tambah(2, 3), 2 akan ditugaskan ke a dan 3 akan ditugaskan ke b berdasarkan posisi mereka.
  • Keyword arguments: argumen kata kunci memungkinkan kita menyebutkan argumen dengan nama parameter, bukan berdasarkan posisi. Misalnya, dalam fungsi tambah(a, b), kita bisa memanggil tambah(b=3, a=2). Nilai 2 akan ditugaskan ke a dan 3 akan ditugaskan ke b berdasarkan kata kunci, bukan posisi.
  • Default arguments: argumen default adalah argumen yang memiliki nilai default. Artinya, jika kita tidak memberikan argumen untuk parameter tersebut saat memanggil fungsi, Python akan menggunakan nilai default-nya. Contohnya, dalam fungsi tambah(a, b=3), jika kita memanggil tambah(2), nilai 2 akan ditugaskan ke a dan b akan menggunakan nilai default 3.
  • Variable-Length arguments: argumen berlapis variabel memungkinkan jumlah argumen yang tidak ditentukan saat memanggil fungsi. Dalam Python, kita bisa menggunakan *args untuk argumen posisional dan **kwargs untuk argumen berdasarkan kata kunci.

Sebagai contoh, dalam fungsi tambah(*args), kita bisa memanggil tambah(1, 2, 3, 4, 5) dan fungsi akan menerima semua argumen tersebut dalam bentuk tuple. Untuk **kwargs, kita bisa memanggil fungsi seperti tambah(a=1, b=2, c=3) dan fungsi akan menerima argumen tersebut dalam bentuk dictionary.

Dalam konteks definisi fungsi, keempat jenis di atas merujuk ke bagaimana parameter didefinisikan. Sementara dalam konteks pemanggilan fungsi, mereka merujuk ke bagaimana argumen diberikan.

Fungsi dengan Parameter Wajib

Parameter wajib atau required parameter adalah parameter yang harus kita berikan nilai saat memanggil fungsi. Jika kita tidak memberikan argumen untuk parameter wajib saat memanggil fungsi, Python akan memberikan pesan error.

Sebagai contoh, kita bisa membuat fungsi bagi yang menerima dua parameter, yaitu pembilang dan penyebut. Kedua parameter ini adalah parameter wajib. Artinya, kita harus memberikan nilai untuk kedua parameter ini saat memanggil fungsi.

Berikut contoh definisi fungsi dengan parameter wajib:

Untuk memanggil fungsi ini, kita harus memberikan dua argumen. Argumen pertama akan menjadi nilai dari pembilang, dan argumen kedua akan menjadi nilai dari penyebut. Berikut adalah contoh memanggil fungsi dengan argumen yang sesuai:

Kode di atas akan menghasilkan output 5.0 karena 10 dibagi 2 sama dengan 5.

Namun, jika kita mencoba memanggil fungsi tanpa memberikan semua argumen yang diperlukan seperti di bawah ini, Python akan memberikan pesan error karena kita tidak memberikan nilai untuk parameter penyebut.

Fungsi dengan Parameter Opsional (Default)

Parameter default adalah parameter yang memiliki nilai default. Dengan kata lain, kita bisa memanggil fungsi tanpa memberikan argumen untuk parameter tersebut dan Python akan menggunakan nilai default-nya.

Parameter default dibuat dengan menambahkan tanda sama dengan (=) dan nilai default setelah nama parameter dalam definisi fungsi.

Berikut contoh fungsi dengan parameter default:

Dalam fungsi sapa di atas, parameter nama memiliki nilai default "Tamu". Kita bisa memanggil fungsi ini dengan atau tanpa argumen. Jika kita memanggil fungsi tanpa argumen, Python akan menggunakan nilai default:

Kode di atas akan menghasilkan output: "Halo, Tamu!".

Namun, jika kita memberikan argumen saat memanggil fungsi, Python akan menggunakan argumen tersebut, bukan nilai default:

Kode di atas akan menghasilkan output: "Halo, Andi!".

Fungsi dengan Parameter Tidak Berurutan

Kita juga bisa menggunakan parameter tidak berurutan atau keyword arguments saat mendefinisikan dan memanggil fungsi. Dengan keyword arguments, kita dapat menyebutkan argumen dengan nama parameter, bukan berdasarkan posisi parameter. Hal ini membuat kita bisa memberikan argumen dalam urutan apa pun.

Sebagai contoh, mari kita definisikan fungsi ucapkan yang menerima dua parameter, yaitu salutasi dan nama.

Secara default, kita perlu memanggil fungsi ini dengan argumen dalam urutan yang sama dengan urutan parameter. Misalnya, kita bisa memanggil fungsi seperti ini:

Kode di atas akan menghasilkan output: "Selamat Pagi, Andi!".

Namun, dengan menggunakan keyword arguments, kita bisa memberikan argumen dalam urutan berbeda. Kita hanya perlu menyebutkan nama parameter saat memberikan argumen. Berikut contoh memanggil fungsi dengan keyword arguments:

Kode di atas akan menghasilkan output yang sama, "Selamat Pagi, Andi!", meskipun kita memberikan argumen nama sebelum argumen salutasi.

Fungsi yang Mengembalikan Nilai (Return)

Dalam Python, fungsi bisa mengembalikan nilai menggunakan kata kunci return. Nilai yang dikembalikan ini bisa berupa hasil operasi dalam fungsi, nilai variabel, atau struktur data lainnya. Ketika fungsi dipanggil dalam ekspresi, fungsi tersebut akan "digantikan" oleh nilai yang dikembalikan.

Sebagai contoh, mari kita buat fungsi kuadrat yang mengembalikan kuadrat dari sebuah angka:

Dalam fungsi kuadrat di atas, kita menghitung kuadrat dari parameter angka dan mengembalikan hasilnya dengan kata kunci return.

Kita bisa memanggil fungsi ini dan menggunakan nilai yang dikembalikan dalam ekspresi lain, misalnya:

Kode di atas akan menghasilkan output: "Kuadrat dari 5 adalah 25".

Selain itu, kita bisa menampung nilai yang dikembalikan dalam variabel:

Kode di atas akan menghasilkan output: "Kuadrat dari 7 adalah 49".

Penting untuk diingat bahwa ketika kata kunci return dijalankan dalam fungsi, eksekusi fungsi akan selesai dan Python akan "keluar" dari fungsi. Jadi, pastikan untuk meletakkan return pada bagian akhir fungsi kamu.

FAQ (Frequently Ask Question)

Apa yang dimaksud dengan scope variabel dalam fungsi Python?

Scope variabel merujuk pada tempat di mana kita bisa mengakses suatu variabel. Variabel yang didefinisikan dalam fungsi memiliki scope lokal, artinya hanya bisa diakses dalam fungsi tersebut. Sementara variabel yang didefinisikan di luar fungsi memiliki scope global. Kita bisa mengakses di mana saja dalam kode.

Bagaimana jika lupa menulis return dalam fungsi Python?

Jika kamu tidak menulis pernyataan return dalam fungsi, Python secara otomatis akan mengembalikan None saat fungsi tersebut dipanggil.

Apa yang terjadi jika mencoba mengakses variabel lokal di luar fungsi?

Variabel lokal hanya bisa diakses di dalam fungsi di mana mereka didefinisikan. Jika kamu mencoba mengakses variabel lokal di luar fungsi tersebut, Python akan memberikan error NameError.

Penutup

Fungsi dalam Python yang didefinisikan menggunakan kata kunci def adalah instrumen penting yang memungkinkan kita menulis dengan lebih modular dan efisien. Fungsi memungkinkan kita untuk mengelompokkan kode dalam blok yang dapat digunakan kembali, sehingga memudahkan debugging dan pemeliharaan kode.

Memahami konsep-konsep di atas tidak hanya akan membantu menjadi lebih efisien dalam menulis kode Python, tetapi juga membantu memahami kode orang lain. Seperti yang telah kita pelajari, fungsi memainkan peran penting dalam memecahkan tugas-tugas kompleks menjadi bagian yang lebih kecil dan mudah dikelola, menjadikannya alat berharga dalam toolkit seorang data analyst.

RevoU Staff
Kickstart your career in tech with RevoU!

Masih ragu? Coba dulu 3 hari, GRATIS
di Full-Stack Trial Class!

Rasakan pengalaman belajar di RevoU Full-Stack Program: Kelas 100% LIVE, Mini portofolio lewat hands-on assignment, Bimbingan Team Lead & small group discussion. Kalau cocok, kamu bisa lanjut daftar Full Program dengan kesempatan Fast-Track (skip semua tes seleksi masuk, langsung ke tahap akhir!)

Masih ragu? Coba dulu 3 hari, GRATIS
di Full-Stack Trial Class!

Rasakan pengalaman belajar di RevoU Full-Stack Program: Kelas 100% LIVE, Mini portofolio lewat hands-on assignment, Bimbingan Team Lead & small group discussion. Kalau cocok, kamu bisa lanjut daftar Full Program dengan kesempatan Fast-Track (skip semua tes seleksi masuk, langsung ke tahap akhir!)

Masih ragu? Coba dulu 3 hari, GRATIS
di Full-Stack Trial Class!

Rasakan pengalaman belajar di RevoU Full-Stack Program: Kelas 100% LIVE, Mini portofolio lewat hands-on assignment, Bimbingan Team Lead & small group discussion. Kalau cocok, kamu bisa lanjut daftar Full Program dengan kesempatan Fast-Track (skip semua tes seleksi masuk, langsung ke tahap akhir!)

Artikel Lainnya

Mau belajar

Data Analytics

?

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!
Daftar Isi

Mulai karirmu dalam

Data Analytics

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!

Mau Belajar

Data Analytics

?

Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!

DAFTAR FULL PROGRAM

Mau Belajar

Data Analytics

?

Python Def: Contoh Penggunaan dan Fungsi Return

Apa itu Python def dan bagaimana contoh penggunaannya? Simak artikel berikut!
RevoU Staff
July 26, 2023
6
min read

Overview

Fungsi dalam Python yang didefinisikan menggunakan kata kunci def adalah instrumen penting yang memungkinkan kita menulis dengan lebih modular dan efisien. Fungsi memungkinkan kita untuk mengelompokkan kode dalam blok yang dapat digunakan kembali, sehingga memudahkan debugging dan pemeliharaan kode.

Salah satu aspek penting dari Python dan bahasa pemrograman pada umumnya adalah konsep fungsi.

Fungsi adalah blok kode yang dapat digunakan kembali, memungkinkan kita menulis kode yang lebih efisien dan mudah dibaca. 

Jika kamu pernah menulis kode Python atau bahkan jika kamu baru saja memulainya, kamu mungkin telah melihat kata kunci def. Kata kunci ini digunakan untuk mendefinisikan fungsi di Python.

Tapi apa sebenarnya arti dari def ini? Bagaimana cara kerja dan penggunaan fungsi untuk membuat kode yang lebih baik?

Di artikel berikut, kamu akan menjelajahi def dan fungsi di Python. Dengan memahami konsep ini, kita akan membuat kode menjadi lebih rapi, lebih modular, dan lebih mudah untuk di-debug. Selamat membaca!

Pengertian Fungsi dalam Python dan Def Keyword

Kita perlu mengetahui berbagai jenis alat yang bisa membantu menganalisis dan mengolah data secara efisien. Salah satu alat tersebut adalah fungsi dalam Python yang didefinisikan menggunakan keyword 'def'.

Function atau fungsi dalam Python adalah blok kode terorganisir dan dapat digunakan kembali untuk melakukan tindakan tertentu.

Berbeda dari potongan kode lainnya, fungsi dalam Python dapat melakukan tugas spesifik dan kemudian mengembalikan hasilnya. Artinya, kita dapat mengisolasi bagian kode untuk melakukan tugas tertentu, lalu menggunakan ulang bagian tersebut di tempat lain dalam program kita.

Fungsi membantu dalam mengorganisir kode dengan cara memecahnya menjadi bagian-bagian kecil, di mana setiap bagian mengerjakan tugas tertentu.

Konsep ini membantu kita dalam memahami, mengedit, dan men-debug kode dengan lebih maksimal. Selain itu, menggunakan fungsi juga bisa membuat kode kita lebih ringkas, lebih mudah dibaca, dan lebih mudah di-maintenance.

Keyword 'def' menjadi kata kunci yang paling banyak digunakan dalam Python karena fungsi berperan penting dalam struktur dan logika dari kode yang kita tulis. Saat kita menulis 'def' diikuti oleh nama fungsi dan tanda kurung (), Python mengerti bahwa kita sedang mendefinisikan sebuah fungsi. 

Misalnya, 'def analisis_data():' akan mendefinisikan sebuah fungsi dengan nama 'analisis_data'.

Syntax Python Def dan Cara Membuatnya

Untuk membuat fungsi di Python, kamu bisa menggunakan kata kunci 'def' diikuti dengan nama fungsi dan tanda kurung yang berisi parameter (jika diperlukan). Setelahnya, akhiri dengan titik dua (:).

Blok kode yang menjalankan tugas khusus dari fungsi tersebut ditulis pada baris baru dengan indentasi (penulisan yang menjorok ke dalam).

Berikut adalah syntax dasarnya:

Berikut adalah langkah-langkah dalam mendefinisikan fungsi:

  • Tentukan nama fungsi: kamu bisa memberikan nama apa pun untuk fungsi kamu, asalkan sesuai dengan aturan penamaan dalam Python. Biasanya, nama fungsi harus berupa huruf atau garis bawah (_), tidak boleh dimulai dengan angka, dan Python case-sensitive. Artinya, huruf besar dan kecil dianggap berbeda.
  • Tentukan parameter: parameter adalah input untuk fungsi. Kamu bisa menentukan sebanyak mungkin parameter sesuai kebutuhan. Jika tidak memerlukan parameter, kamu bisa membuat fungsi dengan tanda kurung kosong.
  • Buat blok kode fungsi: bagian ini adalah operasi yang ingin kamu lakukan. Blok kode fungsi bisa berupa operasi matematika, manipulasi string, operasi logika, dan sebagainya.
  • Tentukan output dengan 'return': fungsi dapat menghasilkan output menggunakan kata kunci 'return'. Setelah menjumpai 'return', Python akan keluar dari fungsi dan menghasilkan nilai tersebut.

Cara Memanggil Fungsi yang Telah Didefinisikan

Setelah kita mendefinisikan fungsi dalam Python menggunakan keyword 'def', kita bisa memanggil fungsi tersebut untuk menjalankan blok kode yang ada di dalamnya.

Cara memanggil fungsi cukup sederhana, kita hanya perlu menuliskan nama fungsi yang telah didefinisikan sebelumnya lalu diikuti oleh tanda kurung (). Jika fungsi tersebut memerlukan parameter, kita perlu memasukkan nilai-nilai parameter tersebut dalam tanda kurung.

Berikut adalah format dasarnya:

Sebagai contoh, mari kita ambil fungsi tambah yang telah didefinisikan sebelumnya:

Untuk memanggil fungsi, kita dapat melakukannya seperti ini:

Dalam kasus di atas, kita memanggil fungsi tambah dengan dua argumen, yaitu 7 dan 3. Fungsi tersebut kemudian menjumlahkan kedua angka ini dan mengembalikan hasilnya.

Jika kita memiliki fungsi lebih kompleks yang beroperasi pada data dalam bentuk tabel, kita bisa memanggil fungsi tersebut dengan cara yang sama. Misalnya, kita memiliki fungsi yang menghitung rata-rata dari kolom data dalam format tabel teks. Kita bisa memanggil fungsi tersebut dengan memasukkan data tabel sebagai argumen.

Parameter dan Argumen dalam Fungsi

Dalam konteks fungsi Python, istilah parameter dan argumen sering digunakan. Kedua istilah ini merujuk pada variabel yang digunakan dalam definisi dan panggilan fungsi, tetapi mereka memiliki perbedaan.

Parameter adalah variabel yang kita deklarasikan dalam definisi fungsi. Mereka bertindak seperti "variabel placeholder" untuk mewakili data yang akan kita operasikan dalam fungsi. Sebagai contoh:

Variabel angka1 dan angka2 adalah parameter.

Sementara itu, argumen adalah nilai yang kita berikan saat memanggil fungsi. Dalam konteks ini, argumen adalah data aktual yang kita masukkan ke dalam fungsi. Misalnya:

Angka 3 dan 7 disebut argumen fungsi.

{{COMPONENT_IDENTIFIER}}

Selanjutnya, mari kita bahas cara pemberian input dan parameter yang dapat digunakan dalam fungsi Python:

  • Positional arguments: argumen posisional adalah argumen yang nilainya ditentukan berdasarkan posisinya. Misalnya, dalam fungsi tambah(a, b), saat kita memanggil tambah(2, 3), 2 akan ditugaskan ke a dan 3 akan ditugaskan ke b berdasarkan posisi mereka.
  • Keyword arguments: argumen kata kunci memungkinkan kita menyebutkan argumen dengan nama parameter, bukan berdasarkan posisi. Misalnya, dalam fungsi tambah(a, b), kita bisa memanggil tambah(b=3, a=2). Nilai 2 akan ditugaskan ke a dan 3 akan ditugaskan ke b berdasarkan kata kunci, bukan posisi.
  • Default arguments: argumen default adalah argumen yang memiliki nilai default. Artinya, jika kita tidak memberikan argumen untuk parameter tersebut saat memanggil fungsi, Python akan menggunakan nilai default-nya. Contohnya, dalam fungsi tambah(a, b=3), jika kita memanggil tambah(2), nilai 2 akan ditugaskan ke a dan b akan menggunakan nilai default 3.
  • Variable-Length arguments: argumen berlapis variabel memungkinkan jumlah argumen yang tidak ditentukan saat memanggil fungsi. Dalam Python, kita bisa menggunakan *args untuk argumen posisional dan **kwargs untuk argumen berdasarkan kata kunci.

Sebagai contoh, dalam fungsi tambah(*args), kita bisa memanggil tambah(1, 2, 3, 4, 5) dan fungsi akan menerima semua argumen tersebut dalam bentuk tuple. Untuk **kwargs, kita bisa memanggil fungsi seperti tambah(a=1, b=2, c=3) dan fungsi akan menerima argumen tersebut dalam bentuk dictionary.

Dalam konteks definisi fungsi, keempat jenis di atas merujuk ke bagaimana parameter didefinisikan. Sementara dalam konteks pemanggilan fungsi, mereka merujuk ke bagaimana argumen diberikan.

Fungsi dengan Parameter Wajib

Parameter wajib atau required parameter adalah parameter yang harus kita berikan nilai saat memanggil fungsi. Jika kita tidak memberikan argumen untuk parameter wajib saat memanggil fungsi, Python akan memberikan pesan error.

Sebagai contoh, kita bisa membuat fungsi bagi yang menerima dua parameter, yaitu pembilang dan penyebut. Kedua parameter ini adalah parameter wajib. Artinya, kita harus memberikan nilai untuk kedua parameter ini saat memanggil fungsi.

Berikut contoh definisi fungsi dengan parameter wajib:

Untuk memanggil fungsi ini, kita harus memberikan dua argumen. Argumen pertama akan menjadi nilai dari pembilang, dan argumen kedua akan menjadi nilai dari penyebut. Berikut adalah contoh memanggil fungsi dengan argumen yang sesuai:

Kode di atas akan menghasilkan output 5.0 karena 10 dibagi 2 sama dengan 5.

Namun, jika kita mencoba memanggil fungsi tanpa memberikan semua argumen yang diperlukan seperti di bawah ini, Python akan memberikan pesan error karena kita tidak memberikan nilai untuk parameter penyebut.

Fungsi dengan Parameter Opsional (Default)

Parameter default adalah parameter yang memiliki nilai default. Dengan kata lain, kita bisa memanggil fungsi tanpa memberikan argumen untuk parameter tersebut dan Python akan menggunakan nilai default-nya.

Parameter default dibuat dengan menambahkan tanda sama dengan (=) dan nilai default setelah nama parameter dalam definisi fungsi.

Berikut contoh fungsi dengan parameter default:

Dalam fungsi sapa di atas, parameter nama memiliki nilai default "Tamu". Kita bisa memanggil fungsi ini dengan atau tanpa argumen. Jika kita memanggil fungsi tanpa argumen, Python akan menggunakan nilai default:

Kode di atas akan menghasilkan output: "Halo, Tamu!".

Namun, jika kita memberikan argumen saat memanggil fungsi, Python akan menggunakan argumen tersebut, bukan nilai default:

Kode di atas akan menghasilkan output: "Halo, Andi!".

Fungsi dengan Parameter Tidak Berurutan

Kita juga bisa menggunakan parameter tidak berurutan atau keyword arguments saat mendefinisikan dan memanggil fungsi. Dengan keyword arguments, kita dapat menyebutkan argumen dengan nama parameter, bukan berdasarkan posisi parameter. Hal ini membuat kita bisa memberikan argumen dalam urutan apa pun.

Sebagai contoh, mari kita definisikan fungsi ucapkan yang menerima dua parameter, yaitu salutasi dan nama.

Secara default, kita perlu memanggil fungsi ini dengan argumen dalam urutan yang sama dengan urutan parameter. Misalnya, kita bisa memanggil fungsi seperti ini:

Kode di atas akan menghasilkan output: "Selamat Pagi, Andi!".

Namun, dengan menggunakan keyword arguments, kita bisa memberikan argumen dalam urutan berbeda. Kita hanya perlu menyebutkan nama parameter saat memberikan argumen. Berikut contoh memanggil fungsi dengan keyword arguments:

Kode di atas akan menghasilkan output yang sama, "Selamat Pagi, Andi!", meskipun kita memberikan argumen nama sebelum argumen salutasi.

Fungsi yang Mengembalikan Nilai (Return)

Dalam Python, fungsi bisa mengembalikan nilai menggunakan kata kunci return. Nilai yang dikembalikan ini bisa berupa hasil operasi dalam fungsi, nilai variabel, atau struktur data lainnya. Ketika fungsi dipanggil dalam ekspresi, fungsi tersebut akan "digantikan" oleh nilai yang dikembalikan.

Sebagai contoh, mari kita buat fungsi kuadrat yang mengembalikan kuadrat dari sebuah angka:

Dalam fungsi kuadrat di atas, kita menghitung kuadrat dari parameter angka dan mengembalikan hasilnya dengan kata kunci return.

Kita bisa memanggil fungsi ini dan menggunakan nilai yang dikembalikan dalam ekspresi lain, misalnya:

Kode di atas akan menghasilkan output: "Kuadrat dari 5 adalah 25".

Selain itu, kita bisa menampung nilai yang dikembalikan dalam variabel:

Kode di atas akan menghasilkan output: "Kuadrat dari 7 adalah 49".

Penting untuk diingat bahwa ketika kata kunci return dijalankan dalam fungsi, eksekusi fungsi akan selesai dan Python akan "keluar" dari fungsi. Jadi, pastikan untuk meletakkan return pada bagian akhir fungsi kamu.

FAQ (Frequently Ask Question)

Apa yang dimaksud dengan scope variabel dalam fungsi Python?

Scope variabel merujuk pada tempat di mana kita bisa mengakses suatu variabel. Variabel yang didefinisikan dalam fungsi memiliki scope lokal, artinya hanya bisa diakses dalam fungsi tersebut. Sementara variabel yang didefinisikan di luar fungsi memiliki scope global. Kita bisa mengakses di mana saja dalam kode.

Bagaimana jika lupa menulis return dalam fungsi Python?

Jika kamu tidak menulis pernyataan return dalam fungsi, Python secara otomatis akan mengembalikan None saat fungsi tersebut dipanggil.

Apa yang terjadi jika mencoba mengakses variabel lokal di luar fungsi?

Variabel lokal hanya bisa diakses di dalam fungsi di mana mereka didefinisikan. Jika kamu mencoba mengakses variabel lokal di luar fungsi tersebut, Python akan memberikan error NameError.

Penutup

Fungsi dalam Python yang didefinisikan menggunakan kata kunci def adalah instrumen penting yang memungkinkan kita menulis dengan lebih modular dan efisien. Fungsi memungkinkan kita untuk mengelompokkan kode dalam blok yang dapat digunakan kembali, sehingga memudahkan debugging dan pemeliharaan kode.

Memahami konsep-konsep di atas tidak hanya akan membantu menjadi lebih efisien dalam menulis kode Python, tetapi juga membantu memahami kode orang lain. Seperti yang telah kita pelajari, fungsi memainkan peran penting dalam memecahkan tugas-tugas kompleks menjadi bagian yang lebih kecil dan mudah dikelola, menjadikannya alat berharga dalam toolkit seorang data analyst.

RevoU Staff
Kickstart your career in tech with RevoU!
Menu