Membuat Fungsi di Python

Setelah mencoba Python di interactive mode, kali ini kita akan mencoba di scripting mode. Teknik yang akan digunakan adalah fungsi. Bagaimana membuat fungsi di Python? Berikut cara sederhananya. Ingat, tidak perlu dibuat susah, buat hal yang kompleks menjadi sederhana saja :D.

Sebenarnya di Python program bisa saja ditulis secara sekuensial. Namun, kita juga bisa membuatnya menjadi modul-modul kecil dalam bentuk fungsi. Mari kita coba bandingkan satu per satu.

Kita akan membuat sebuah program sederhana operasi aritmetika dasar: penjumlahan, pengurangan, perkalian, dan pembagian dengan dua operand (bilangan yang dioperasikan). Pertama kita akan mencoba menulis program secara sekuensial pada scripting mode. Komentar di Python diawali dengan tanda “#”.

# deklarasi variabel operand
operand1 = 2
operand2 = 3
 
# operasi aritmetika dasar
hasil_jumlah = operand1 + operand2
hasil_kurang = operand1 - operand2
hasil_kali = operand1 * operand2
hasil_bagi = operand1 / operand2
 
# menampilkan hasil operasi
print "Hasil penjumlahan:", hasil_jumlah
print "Hasil pengurangan:", hasil_kurang
print "Hasil perkalian  :", hasil_kali
print "Hasil pembagian  :", hasil_bagi

Jika Anda menjalankan script ini di Linux, tambahkan satu baris seperti di bawah ini di awal script. Maksud dari perintah ini adalah environment yang digunakan untuk menjalankan atau mengeksekusi script ini adalah Python. Lihat ini atau ini untuk keterangan lebih lengkap.

#!/usr/bin/env python

Jalankan program pendek tersebut. Hasilnya akan seperti ini.

Hasil penjumlahan: 5
Hasil pengurangan: -1
Hasil perkalian  : 6
Hasil pembagian  : 0

Ada satu hasil yang aneh yaitu hasil pembagian. Bukankah seharusnya hasil 2/3 adalah 0.667 … ? Python tidak bisa mengoperasikan ini karena tipe data operand1 dan operand2 adalah integer, sehingga tidak menghasilkan float. Untuk bisa menghasilkan hasil yang diinginkan, kita harus melakukan casting tipe data dengan cara yang cukup sederhana. Ganti baris operasi hasil bagi dengan baris sebagai berikut:

hasil_bagi = float(operand1) / float(operand2)

Maka hasilnya sudah sesuai yang kita harapkan.

Hasil penjumlahan: 5
Hasil pengurangan: -1
Hasil perkalian  : 6
Hasil pembagian  : 0.666666666667

Lalu masalahnya adalah bagaimana jika kita harus menjalankan operasi ini sebanyak 5 kali, 10 kali, atau bahkan ratusan kali? Maka kita sebaiknya membuat fungsi. Bagaimana membuat fungsi? Secara umum, untuk membuat fungsi di Python adalah seperti ini.

def nama_fungsi(parameter1, parameter2, ...):
	operasi

Jangan lupa menyisipkan tanda “:” di akhir nama fungsi, dan baris program dalam operasi harus diindentasi sebanyak satu tab. Python adalah program yang sangat strict dalam hal indentasi. Bagian subprogram harus diindentasi increment (masuk ke dalam). Sedangkan untuk kembali ke subprogram sebelumnya, harus diindentasi sebaliknya (decrement). Kita akan mengenal ini sambil berjalan ngoprek Python.

Sekarang kita akan membuat fungsi untuk mengoperasikan aritmetika dasar yang sudah dicoba sebelumnya.

def operasi(operand1, operand2):
	# operasi aritmetika dasar
	hasil_jumlah = operand1 + operand2
	hasil_kurang = operand1 - operand2
	hasil_kali = float(operand1) * float(operand2)
	hasil_bagi = float(operand1) / float(operand2)
 
	# menampilkan hasil operasi
	print "Hasil penjumlahan:", hasil_jumlah
	print "Hasil pengurangan:", hasil_kurang
	print "Hasil perkalian  :", hasil_kali
	print "Hasil pembagian  :", hasil_bagi

Fungsi ini bisa dipanggil dengan cara sebagai berikut

operasi(2, 3)

Sehingga, program secara keseluruhan bisa disimak seperti di bawah ini

def operasi(operand1, operand2):
	# operasi aritmetika dasar
	hasil_jumlah = operand1 + operand2
	hasil_kurang = operand1 - operand2
	hasil_kali = float(operand1) * float(operand2)
	hasil_bagi = float(operand1) / float(operand2)
 
	# menampilkan hasil operasi
	print "Hasil penjumlahan:", hasil_jumlah
	print "Hasil pengurangan:", hasil_kurang
	print "Hasil perkalian  :", hasil_kali
	print "Hasil pembagian  :", hasil_bagi
 
operasi(2, 3)

Perhatikan bahwa penulisan pemanggilan fungsi mengalami decrease indent. Selamat mencoba!

December 18, 2011

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>