Cara menggunakan ENNUMERATE pada Python

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.

Setelah Date Time kita lanjutkan belajar python enum dan set. Enum adalah sekumpulan nama simbolik yang terikat pada nilai unik dan konstan.

Table of Contents

  • Contoh enum Python
  • Penjelasan Enumerate Python
  • Contoh Enumerate di Python
  • UsingEnumerate di daftar startIndex
  • Mengulangi objek Enumerate
  • Melakukan Enumerasi (Enumerating) sebuah Tuple
  • Enumerating sebuah string
  • Enumerate sebuah dictionary
  • Kelebihan Enumerate pada Pytthon
  • Apa itu enumerate di Python?
  • Apa itu enumerate function?

Contoh enum Python

Dalam penulisan enum member, disarankan menggunakan kapital besar (UPPER_CASE) dan tentu saja harus uniqe. Tidak boleh ada anggota enum yang sama. Baik kita akan membuat sebuah contoh:

from enum import Enum
class Color(Enum):
     RED = 1
     GREEN = 2
     BLUE = 3

Class Color adalah enum atau enumerasi, dengan memiliki attribute Color.RED, Color.GREEM dan lainnya. Yang ini disebut anggota enumerasi (enum members) dan merupakan functionaly constans. Enum members memiliki nama dan value (nilai), yaitu nama dari Color.RED adalah RED dan valuenya adalah 1, dan lain lain.

Value dari members bisa berisi apa saja, int, str, atau yang lainnya. Jika nilainya tidak penting, value ini bisa sama, tapi bila penting sebaiknya diperhatikan juga.

>>> print(Color.RED)
Color.RED

>>> print(Color(1))
Color.RED

>>> print(Color['RED'])
Color.RED

Bila membuat enum member yang sama, maka akan seperti berikut ini:

class Abata(Enum):
    DURIAN = 1
    DURIAN = 2
 
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<stdin>", line 3, in Abata
  File "/usr/lib/python3.7/enum.py", line 101, in __setitem__
    raise TypeError('Attempted to reuse key: %r' % key)
TypeError: Attempted to reuse key: 'DURIAN'

Dan untuk value yang sama, maka akan seperti ini:

class Tryx(Enum):
    MANGGA = 1
    SEMANGKA = 1
    
print(Tryx(1))
Tryx.MANGGA

Enum juga mendukung iterasi

class Buah(Enum):
    APEL = 1
    JERUK = 2
    DUKU = 3
    MANGGA = 4
    JAMBU = 5

for buah in Buah:
    print(buah)

Buah.APEL
Buah.JERUK
Buah.DUKU
Buah.MANGGA
Buah.JAMBU

Membuat value enum otomatis

from enum import Enum, auto
class Color(Enum):
    MERAH = auto()
    PUTIH = auto()
    HITAM = auto()
    BIRU = auto()
    UNGU = auto()
    KUNING = auto()

list(Color)
[
 <Color.MERAH: 1>,
 <Color.PUTIH: 2>,
 <Color.HITAM: 3>,
 <Color.BIRU: 4>,
 <Color.UNGU: 5>,
 <Color.KUNING: 6>
]

Atau bisa juga membuat seperti ini

class AutoName(Enum):
    def _generate_next_value_(name, start, count, last_values):
            return name

class MataAngin(AutoName):
    SELATAN = auto()
    UTARA = auto()
    BARAT = auto()
    TIMUR = auto()

list(MataAngin)
[
 <MataAngin.SELATAN: 'SELATAN'>,
 <MataAngin.UTARA: 'UTARA'>,
 <MataAngin.BARAT: 'BARAT'>,
 <MataAngin.TIMUR: 'TIMUR'>
]

Akhirnya

Akhirnya kita sudah mempelajari beberapa hal mengenai enum di python. Selanjutnya python type data set Mungkin kamu juga perlu membaca tulisan lainnya pada directory python

Python Enumerate() atau biasa disebut juga dengan enumerate python adalah fungsi bawaan yang tersedia dengan library Python. Dibutuhkan input yang diberikan sebagai koleksi atau tupel dan mengembalikannya sebagai objek enumerate.

Table of Contents

  • Penjelasan Enumerate Python
  • Contoh Enumerate di Python
  • UsingEnumerate di daftar startIndex
  • Mengulangi objek Enumerate
  • Melakukan Enumerasi (Enumerating) sebuah Tuple
  • Enumerating sebuah string
  • Enumerate sebuah dictionary
  • Kelebihan Enumerate pada Pytthon

Perintah Python Enumerate() menambahkan penghitung ke setiap item dari objek yang dapat diubah dan mengembalikan objek enumerate sebagai string keluaran. Pada artikel kali ini, Codekey akan membahas tentang fungsi enumerate Python. Jika Kamu tertarik untuk tahu tentang enumerate python, simak artikel berikut ini sampai akhir.

  • Penjelasan Enumerate Python
    • Contoh Enumerate di Python
    • UsingEnumerate di daftar startIndex
    • Mengulangi objek Enumerate
    • Melakukan Enumerasi (Enumerating) sebuah Tuple
    • Enumerating sebuah string
    • Enumerate sebuah dictionary
    • Kelebihan Enumerate pada Pytthon

Penjelasan Enumerate Python

Sering kali ketika berhadapan dengan iterator, kita juga perlu menghitung iterasi. Python memudahkan tugas programmer dengan menyediakan fungsi built-in enumerate() untuk tugas ini. Metode Enumerate() menambahkan penghitung ke iterable dan mengembalikannya dalam bentuk objek enumerate.

Objek enumerate ini kemudian dapat digunakan secara langsung untuk loop atau diubah menjadi daftar tupel menggunakan metode list(). Ada dua parameter yang ada dalam python enumerate yaitu:

  • Iterable: objek yang dapat diulang.
  • StartIndex: (opsional) Hitungan akan dimulai dengan nilai yang diberikan di startIndex untuk item pertama dalam loop dan menambahkannya untuk item berikutnya hingga mencapai akhir loop. Namun, Jika startIndex tidak ditentukan, penghitungan akan dimulai dari 0.

Berikut ini adalah contoh syntax dari enumerate pada Python:

enumerate(iterable, start=0)

Parameters:

Iterable: objek apa pun yang mendukung iterasi

Start: nilai indeks dari penghitungnya adalah untuk memulai, secara default adalah 0

ReturnValue

ReturnValue akan mengembalikan objek iterable, dengan countvalue ke masing-masing item ke objek iterator yang diberikan sebagai input.

Contoh Enumerate di Python

Metode enumerate dilengkapi dengan penghitung atau indeks otomatis untuk setiap item yang ada dalam daftar Enumerate dengan Python. Nilai firstindex akan dimulai dari 0. Kamu juga dapat menentukan startindex dengan menggunakan parameter opsional startIndex di enumerate.

Pada kode di bawah ini, mylist adalah daftar yang diberikan untuk fungsi Enumerate dengan Python. Fungsi list() digunakan untuk menampilkan output Enumerate Python. Catatan untuk kamu ingat: tidak ada startIndex yang digunakan sehingga indeks untuk item pertama akan dimulai dari 0.

Output dari enumerate akan menjadi sebagai berikut:

(0, item_1), (1, item_2), (2, item_3), … (n, item_n)

Contoh lainnya:

File: python_enumerate.py
mylist = ['HTML', 'CSS' ,'JAVA', 'PYTHON']
e_list = enumerate(mylist)
print(list(e_list))

Output: 
[(0, 'HTML'), (1, ' CSS'), (2, ' JAVA'), (3, ' PYTHON')]

UsingEnumerate di daftar startIndex

Dalam contoh di bawah ini, indeks awal diberikan sebagai 2. Indeks item pertama akan dimulai dari indeks awal yang diberikan.

Pada contoh di bawah ini pula, mylist adalah daftar yang diberikan untuk menghitung. Fungsi list() digunakan untuk menampilkan output enumerate.

mylist = [' HTML', ' CSS' ,' JAVA', ' PYTHON']
e_list = enumerate(mylist,2)
print(list(e_list))

Output: 
[(2, ' HTML'), (3, ' CSS'), (4, 'JAVA'), (5, 'PYTHON')]

Mengulangi objek Enumerate

Contoh menunjukkan enumerasi atas objek dengan dan tanpa startIndex.

  • For-loop pertama tidak memiliki startIndex, jadi indeks dimulai dari 0.
  • For-loop kedua memiliki startIndex sebagai 10, jadi indeksnya dimulai dari 10.

Contoh:

mylist = [' HTML', ' CSS' ,' JAVA', 'PYTHON']

for i in enumerate(mylist):
  print(i)
  print("\n")

print("Using startIndex as 10")    

for i in enumerate(mylist, 10):
  print(i)
  print("\n")

Output:

(0, ' HTML')
(1, 'CSS')
(2, 'JAVA')
(3, ' PYTHON')

Using startIndex as 10
(10, 'HTML')
(11, 'CSS')
(12, 'JAVA')
(13, 'PYTHON')

Melakukan Enumerasi (Enumerating) sebuah Tuple

Dalam contoh di bawah ini, Kamu dapat menggunakan Tuple di dalam enumerate. Kamu juga dapat menggunakan startIndex, dan kunci untuk setiap item akan dimulai dari startIndexgiven. Secara default, startIndex adalah 0. Di sana, Kamu melihat kunci sebagai 0 untuk item HTML dan 1 untuk CSS dan seterusnya.

Contoh:

my_tuple = ("HTML", "CSS", "JAVA", "PYTHON", "PHP")
for i in enumerate(my_tuple):
  print(i)
Output: 
(0, 'HTML')
(1, 'CSS')
(2, 'JAVA')
(3, 'PYTHON')
(4, 'PHP')

Enumerating sebuah string

Dalam Python, string adalah array, dan oleh karena itu kamu pun dapat mengulanginya. Jika kamu meneruskan string ke enumerate(), output akan menunjukkan kepada kamu indeks dan nilai untuk setiap karakter string.

Contoh:

my_str = "CODEKEY"
for i in enumerate(my_str):
  print(i)

Output: 
(0, 'C')
(1, 'O')
(2, 'D')
(3, 'E')
(4, 'K')
(5, 'Y')

Enumerate sebuah dictionary

Di Python, kamus terdaftar dalam tanda kurung kurawal, di dalam tanda kurung kurawal ini, nilainya dideklarasikan. Setiap elemen adalah pasangan kunci/nilai dan dipisahkan dengan koma. Kamu dapat menggunakan kamus di dalam enumerate() dan melihat hasilnya.

my_dict = {"p": "PHP", "j":"JAVA", "n":"PYTHON", "s":"NODEJS"}
for i in enumerate(my_dict):
  print(i)

Output:

(0, 'p')
(1, 'j')
(2, 'n')
(3, 's')

Kelebihan Enumerate pada Pytthon

Kami merangkum beberapa manfaat yang bisa kamu dapat saat bekerja dengan enumerate pada Python. Berikut ini adalah kelebihan dan manfaat menggunakan Enumerate dalam Python:

  • Enumerate memungkinkan Anda untuk mengulang daftar, tuple, kamus, string, dan memberikan nilai bersama dengan indeks.
  • Untuk mendapatkan nilai indeks menggunakan for-loop, Anda dapat menggunakan list.index(n). Namun, list.index(n) sangat mahal karena akan melintasi for-loop dua kali. Enumerate sangat membantu dalam kasus seperti itu karena memberikan indeks dan item sekaligus.

Demikianlah penjelasan tentang enumerate Python yang harus Anda ketahui untuk membuat project di Python. Beberapa hal tentang enumerate Python yang dapat kami rangkum sebagai berikut ini:

  • Fungsi Enumerate() adalah fungsi bawaan yang tersedia dengan python. Fungsi Enumerate() menambahkan penghitung ke setiap item dari objek yang dapat diubah dan mengembalikan objek enumerate.
  • Dalam Enumeration in Python, Anda dapat menentukan startIndex, yaitu penghitung yang Anda inginkan untuk memulai nilai.
  • Enumerate dapat digunakan untuk mengulang daftar, tuple, kamus, dan string.
  • Enumerate sangat membantu ketika Anda menginginkan indeks dan nilai saat mengulang daftar, Tuple, kamus, dan lain sebagainya.
  • Enumerate dilengkapi dengan penghitung/indeks otomatis untuk setiap item yang ada dalam daftar. Nilai indeks pertama akan dimulai dari 0. Anda juga dapat menentukan indeks awal dengan menggunakan parameter opsional startIndex di enumerate.
  • Jika Anda meneruskan string ke enumerate(), output akan menunjukkan kepada Anda indeks dan nilai untuk setiap karakter string.

Kalau kamu ingin belajar Python dan menjadi programmer handal, kami mengajakmu untuk belajar di Codekey. Situs Codekey adalah situs yang menyediakan berbagai materi, pembahasan, tutorial, tips, serta trik untuk kamu belajar bahasa pemrograman.

Kami juga menyediakan materi pembahasan untuk bahasa pemrograman lainnya. Jangan lupa untuk terus dapatkan update artikel terbaru dari Codekey.


Jasa Pembuatan Aplikasi, Website dan Internet Marketing | PT APPKEY
PT APPKEY adalah perusahaan IT yang khusus membuat aplikasi Android, iOS dan mengembangkan sistem website. Kami juga memiliki pengetahuan dan wawasan dalam menjalankan pemasaran online sehingga diharapkan dapat membantu menyelesaikan permasalahan Anda.

Apa itu enumerate di Python?

Fungsi Enumerate() adalah fungsi bawaan yang tersedia dengan python. Fungsi Enumerate() menambahkan penghitung ke setiap item dari objek yang dapat diubah dan mengembalikan objek enumerate. Dalam Enumeration in Python, Anda dapat menentukan startIndex, yaitu penghitung yang Anda inginkan untuk memulai nilai.

Apa itu enumerate function?

Deskripsi Fungsi Fungsi enumerate() mengembalikan nilai berupa objek enumerate. Objek enumerate sendiri merupakan objek iterable yang tiap itemnya berpasangan dengan indeks atau angka yang mewakilinya. Dengan kata lain fungsi ini akan menambahkan penghitung (indeks) ke objek iterable dan mengembalikannya.