Python Function - Return

Reno Iqbalsah

16/05/2023

Bagian ini membahas statement return dalam bahasa pemrograman Python.

Sejauh ini kita sudah menggunakan fungsi dengan mengeluarkan output dengan print(). Namun, pada prakteknya, kita tidak akan sering menggunakan print() dalam sebuah fungsi, melainkan kita akan sering menggunakan keyword return.

Keyword return akan “mengembalikan” sebuah value sebagai hasil dari operasi yang dijalankan dari sebuah fungsi. Jika sebelumnya hasil dari operasi kita keluarkan sebagai output, jika kita menggunakan return, kita dapat menyimpan hasil tersebut ke dalam sebuah variabel, ataupun menggunakannya dalam operasi lain.

Penggunaan return

    
def tambah(a, b): return a + b tambah(5,6)

Dari kode di atas, tidak akan muncul output apapun, padahal sebenarnya operasi tersebut sudah terjadi. Untuk mengeluarkannya sebagai output, kita dapat melakukan seperti di bawah ini.

    
print(tambah(5,6)) # output: 11 hasil = 5 + tambah(5,6) print(hasil) # output: 16

Kita juga dapat menggunakan beberapa keyword return dalam sebuah fungsi dengan menggunakan conditional statement.

    
def gage(num): if num % 2: return "ganjil" else: return "genap" print(gage(5)) # output: ganjil

Sebagai contoh lagi, kita coba ubah fungsi jumlah() pada bagian sebelumnya dengan menggunakan return.

    
def jumlah(*nums): jml = 0 for num in nums: jml += num return jml hasil = jumlah(1,4,2,1) print(hasil) # output: 8

Seperti contoh di atas, kita juga dapat menggunakan variabel jml yang ada pada fungsi tersebut untuk dijadikan sebagai return value dari fungsi jumlah().

Cara Kerja return

Bagaimana cara return bekerja? Hal ini termasuk jarang dibahas dalam beberapa tutorial yang saya baca maupun lihat. Padahal, sebenarnya konsep ini cukup penting dan menarik untuk kita pelajari.

Kita coba dengan melihat pada fungsi jumlah() di atas untuk dapat lebih kita pahami.

    
def jumlah(*nums): jml = 0 for num in nums: jml += num return jml hasil = jumlah(1,4,2,1) print(hasil) # output: 8

Kita mendefinisikan fungsi jumlah() pada baris pertama dan melakukan function call pada baris ke 7. Pada saat kita melakukan function call pada baris ke 7, interpreter akan kembali ke baris 1 untuk menjalankan fungsi yang kita buat.

Ketika interpreter sampai pada keyword return di baris 5, interpreter akan “kembali” atau return ke tempat fungsi tersebut di panggil (dilakukan function call), dalam kasus ini program akan kembali ke baris 7 dengan membawa variabel jml yang kemudian di-assign pada variabel hasil.