Lompat ke konten Lompat ke sidebar Lompat ke footer

Map Function Pada Python

Salah satu proses yang sering ditemui dalam pemrograman adalah proses kalkulasi yang berulang-ulang. Proses ini biasanya ditulis menggunakan loop berupa while atau for, sesuai dengan kebutuhan jenis perulangannya.

Namun, kedua metode di atas bukan satu-satu nya cara untuk meringkas penulisan program. Di python, ada sebuah function yang disebut sebagai map. Walaupun bisa meringkas penulisan code seperti proses loop, map memiliki kelebihan tersendiri lho.

Pengertian Map Function

map adalah sebuah function pada python yang digunakan untuk melakukan kalkulasi secara bersamaan. Kira-kira, prosesnya dapat dilihat pada diagram berikut ini.

diagram-map-function-python

Pada diagram tersebut, terdapat data1 hingga data5 yang harusi dihitung menggunakan fungsi function() yang sama. Sesuai dengan namanya, map function akan memetakan function() pada setiap data input.

fungsi function() akan dipasangkan pada setiap data. Jad seolah-olah ada 5 fungsi dengan input yang berbeda yang siap dikalkulasi. Setelah dipasangkan, kelima fungsi ini kemudian dihitung secara bersamaan. Dan akhirnya, akan muncul 5 buah output data, sesuai dengan jumlah data inputnya.

Syntax Map Function

syntax map function pada python cukup singkat, dan ditulis seperti ini.

map(function, data)

map function memiliki setidaknya 2 argumen yang harus dimasukkan, function dan iterables. Function adalah fungsi yang akan dipetakan menggunakan map. Data adalah data yang akan dihitung menggunakan function.

Data yang digunakan pada fungsi map harus berupa array yang terindeks. Di python ada tiga jenis array terindeks, yaitu list, sets, dan tupple. Sedangkan array tidak terindeks seperti dictionary tidak dapat digunakan.

Data yang digunakan bisa lebih dari satu. Asalkan masing-masing data memiliki jumlah komponen yang sama. Ga mungkin dong komponennya beda, misal data1 jumlahnya 5, data2 jumlahnya 4. Karena map sifatnya berpasangan, maka data ke-5 tidak bisa memiliki pasangan.

Contoh Aplikasi Map Function

Ada 2 contoh penggunaan map function yang akan dibahas. Contoh pertama menggunakan 1 data, dan contoh kedua menggunakan 2 data.

Pertama, akan dicoba menguadratkan semua elemen dalam data. kira-kira seperti di bawah ini scriptnya.

1  data = [4, 2, 5, 1]  
2
3  def kuadrat(element):
4      return element**2
5
6  hasil = map(kuadrat, data)
7  list_hasil = list(hasil)
8
9  print(hasil)
10 print(list_hasil)

output:
<map object at 0x000001CF91CD0348>
[16, 4, 25, 1]

Data yang digunakan adalah sebuah list yang berisi [4, 2, 5, 1]. Data yang digunakan ga melulu berisi angka ya. Bisa juga berupa string, asalkan function yang digunakan juga berupa operasi string.

Karena harus ada fungsi yang dipetakan, dibuat sebuah fungsi pada baris ke-2. Nah, fungsinya sendiri memiliki input satu data, bukan berupa array. Sesuai dong, kan nanti fungsinya dipasangkan ke masing-masing elemen array, jadi inputnya ya satu aja elemen array tadi.

Baris kelima adalah syntax untuk map function nya. Fungsi ini disimpan dalam variabel hasil. Proses baru menghasilkan sebuah fungsi ya, bukan hasil dari map function. Jika di print variabel hasil, maka muncul id map function yang sudah dibuat, bukan sebuah list hasil dari penguadratan data input.

Untuk mengekstrak hasil penghitungannya, ada di baris ke-6. Output dari map function harus dikeluarkan menggunakan konstruktor list(). Ketika diprint list_hasil, maka muncul list yang berisi hasil pengudratan data input.

Contoh kedua, map function yang menggunakan input dua buah array. Scriptnya seperti di bawah ini.

1  data1 = [1, 2, 3, 4, 5]
2  data2 = [3, 4, 5, 8, 1]
3
4  def tambah(element1, element2):
5      return element1 + element2
6  
7  hasil = map(tambah, data1, data2)
8  list_hasil = list(hasil)
9
10 print(list_hasil)

output:
[4, 6, 8, 12, 6]

Pada contoh ini, digunakan dua buah input data, yaitu data1 dan data2. Karena inputnya bertambah, fungsi yang akan di map kan pun diubah. Pada baris ke-4, fungsinya diubah jadi menggunakan dua argumen.

Tentu saja, arguman atau input fungsi yang digunakan masih berupa element atau satu data, seperti contoh sebelumnya.

Syntax map nya pun berubaah, sekarang memiliki 3 argumen, yaitu tambah, data1, data2. Makanya,  Pada penjelasan map function sebelumnya, dibilang setidaknya dibutuhkan 2 argumen. Jika data yang digunakan banyak, maka argumennya pun jadi banyak.

Posting Komentar untuk "Map Function Pada Python"