Memahami Fungsi Enumerate
Bismillah
Di post kemarin, kita sudah mengenal apa itu fungsi enumerate dalam python dan juga bagaimana cara menggunakan dan keuntungannya. Di post sekarang, yuk kita mendalami alur kerja fungsi enumerate. Kemudian membuat kloningan fungsi enumerate ini.
Alur Kerja
Secara garis besar, fungsi enumerate ini me-loop iterable, dan mengubah dari item satuan menjadi tuple. Index pertama adalah nomor urut, dan index kedua adalah item.
Sebagai contoh: Ada list aList
dengan isian berikut ini ['buku', 'polpen']
. Maka, dengan fungsi enumerate ini, item buku
akan berubah menjadi (0, 'buku')
.
iterable ?
Yang bisa di iterasi, bisa list, tuple, string.
Mari kita buat
Disclaimer: versi asli dari fungsi enumerate adalah menggunakan keyword yield
dan tidak menggunakan keyword return
. Kita tidak membahas yield
disini. Untuk memudahkan pemahaman, kita akan membuat fungsi enumerate yang mengembalikan list.
def my_enumerate(iterable, start=0):
index = start
result = []
for x in iterable:
result.append((index, x))
index += 1
return result
Penutup
Bagaimana, mudah bukan?
Sebagai bonus, berikut adalah versi javascript dari fungsi enumerate.
function enumerate(iterable, start) {
var index = start ? start : 0;
var result = [];
iterable.forEach(function(item) {
result.push([index, item]);
index++;
});
return result;
}
Kamu mau menyumbang fungsi enumerate dalam bahasa lain ? Yuk kita diskusikan di komentar.