[Dasar Python] : Fungsi Standar Python: apply()

Apa kabar PythonMania?…Salam DINGIN kami sampaikan buat Anda para pecinta Python, maklum artikel ini ditulis kira-kira 30 menit setelah adzan Subuh dikumandangkan…hehehe. Tak terasa beberapa waktu lalu kita sudah membahas tentang penggunaan Fungsi di Python, sekarang tibalah saatnya kita akan belajar tentang fungsi bawaan Python atau bahasa kerennya Built-In Function. Ada 3 (tiga) yang sering kita temui, yaitu fungsi apply(), filter(), dan map(). Tanpa basa-basi lagi…LANGSUNG KE TE-KA-PE!

FUNGSI apply()

Ketika sebuah fungsi beserta parameternya kita libatkan dalam fungsi apply() sebagai argumen, maka fungsi apply() akan memanggil sebuah obyek dari fungsi tersebut. Berikut syntax dari fungsi apply(),

apply(object, [,args[,kwargs]])

Pemanggilan fungsi Jumlah(5, 8) sama artinya dengan pemanggilan fungsi apply(Jumlah, (5, 8)). Kita juga diperbolehkan untuk memanggil argumen dari fungsi Jumlah dalam bentuk tuple,

datBil = (5, 8)
apply(Jumlah, datBil)

Mengapa kita perlu menggunakan fungsi apply()? Fungsi apply() sangatlah berguna ketika beberapa argumen digunakan dalam fungsi saat program berjalan (run time). Kode program di bawah ini meminta kita untuk memasukkan 2 angka dan satu operator sebagai input. Berdasarkan operator yang dimasukkan, program akan menampilkan hasil dari fungsi matematika tersebut.

# file: tesApply.py
# versi : Python 2.7
# Tujuan: Menguji fungsi apply()

from operator import add, sub, mul

operasi = ('+', '-', '*')

angka = (int(raw_input('Masukkan bilangan 1: ')), 
	int(raw_input('Masukkan bilangan 2: ')))
	
datOp = {'+': add, '-': sub, '*': mul}

kar = raw_input('Masukkan sebuah operator, +/-/*: ')

if kar in operasi:
	hasil = apply(datOp[kar], angka)
	print "%s%s%s=%d" %(angka[0], kar, angka[1], hasil)
else:
	print "salah operator..."

Hasil keluaran dari kode di atas yaitu,

Masukkan bilangan 1: 5
Masukkan bilangan 2: 8
Masukkan sebuah operator, +/-/*: +
5+8=13

Woke!..Semoga Bermanfaat…Salam PythonMania!

3 comments

  1. Gan Ane kok jalanin di Python (2.7.12) IDLE (python GUI) gak bisa , knpa ya ?

    saat ngoding ini gak bisa di save

    operasi = (‘+’, ‘-‘, ‘*’)
    ini
    datOp = {‘+’: add, ‘-‘: sub, ‘*’: mul}
    ini
    kar = raw_input(‘Masukkan sebuah operator, +/-/*: ‘)

    kalau di paksa save malah close program nya

    minta pencerahannya gan

    #Nasih Newbe

    1. Salam kenal Teguh Sobari…:D

      coba diubah, pada datOp = {‘+’: ‘add’, …dst}
      add, sub, dan mul diberi tanda petik

      kami mencoba di Python 3

      datOp = {‘+’: ‘Penjumlahan’, ‘-‘: ‘Pengurangan’, ‘*’: ‘Perkalian’}

      kar = input(‘Masukkan sebuah operator +/-/*: ‘)
      print(‘Anda mengetikkan operator ‘, datOp[kar])

      Berhasil!…hehehe

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s