Cara Menggunakan Enumerate dengan Python (Perulangan dengan Indeks)
Pelajari cara menggunakan fungsi enumerate() dengan Python. Dapatkan indeks dan nilai saat mengulang daftar dengan contoh yang bersih.
Ikhtisar
Saat melakukan iterasi pada daftar, tupel, atau string, Anda sering kali perlu melacak indeks saat ini dari setiap item di samping item itu sendiri. Pola pemula yang umum adalah menggunakan variabel penghitung terpisah yang bertambah secara manual, atau menggunakan `range(len(my_list))` untuk melakukan iterasi melalui indeks. Namun, Python memberikan solusi yang jauh lebih elegan, pythonic, dan bawaan: fungsi `enumerate()`.
Fungsi `enumerate()` mengambil iterable apa pun sebagai argumen dan mengembalikan objek enumerate, yang menghasilkan pasangan tupel nilai indeks. Dengan menggunakan tuple unpacking dalam loop `for`, Anda dapat mengekstrak indeks dan item secara bersamaan. Ini sepenuhnya menghilangkan kebutuhan akan variabel penghitung manual dan tanda kurung pengindeksan, membuat kode Anda jauh lebih bersih dan tidak terlalu rentan terhadap kesalahan satu per satu.
Secara default, `enumerate()` mulai menghitung indeks dari `0`. Namun, Anda dapat meneruskan indeks awal khusus menggunakan argumen kata kunci `start` opsional (misalnya, `enumerate(items, start=1)`). Ini sangat berguna ketika menampilkan nomor daftar kepada pengguna manusia, karena orang biasanya mengharapkan daftar mulai menghitung dari 1, bukan 0.
Kode & Output Eksekusi
Skrip ini mendemonstrasikan iterasi daftar menggunakan enumerate untuk mendapatkan pasangan item indeks, mulai dari 0 dan 1.
fruits = ["apple", "banana", "cherry"]
# 1. Standard enumeration (starts at 0)
print("--- Standard Enumeration ---")
for index, fruit in enumerate(fruits):
print(f"Index {index}: {fruit}")
# 2. Enumeration starting at a custom index (e.g., 1)
print("\n--- Starting at 1 ---")
for num, fruit in enumerate(fruits, start=1):
print(f"Item #{num}: {fruit}")--- Standard Enumeration ---
Index 0: apple
Index 1: banana
Index 2: cherry
--- Starting at 1 ---
Item #1: apple
Item #2: banana
Item #3: cherryImplementasi Langkah demi Langkah
- Teruskan daftar Anda (atau yang dapat diubah) ke fungsi enumerate() bawaan.
- Buka kemasan tupel yang dikembalikan dalam perulangan for menggunakan sintaks untuk indeks, nilai dalam enumerasi (daftar).
- Berikan parameter awal (misalnya, start=1) untuk mengubah nilai penghitung indeks awal.
Pertanyaan yang Sering Diajukan
Apakah enumerate() mengubah daftar asli?
Tidak, enumerate() mengembalikan objek iterator yang malas dan membiarkan daftar asli tidak diubah sepenuhnya.
Bisakah saya menggunakan enumerate() dengan kamus?
Ya, tetapi mengulangi kamus secara langsung akan menghasilkan kuncinya. Untuk mengulangi nilai kunci indeks, gunakan: for i, (k, v) in enumerate(my_dict.items()):.
Topik Terkait
Pelajari cara mengulang atau mengulangi kamus Python. Temukan metode untuk mengulang kunci, nilai, dan pasangan nilai kunci dengan contoh yang bersih dan dapat dijalankan.
Cara Menemukan Panjang Daftar dengan PythonPelajari cara menemukan panjang daftar dengan Python menggunakan fungsi len(). Pahami kompleksitas waktu O(1) dan jumlah pemeriksaan.
Sumber Daya Python yang Direkomendasikan
Perluas pengetahuan Anda dengan tutorial interaktif terkait, lembar contekan, dan perbandingan kode.
Loop Python
Pelajari cara menggunakan loop Python untuk melakukan iterasi pada data. Kuasai perulangan for, perulangan while, hancurkan, lanjutkan, dan ulangi praktik terbaik dengan contoh interaktif.
Lembar
Panduan referensi lengkap untuk manipulasi string Python. Kuasai pemformatan, pencarian, pemisahan, penggantian, dan pemeriksaan properti string.
Python vs JavaScript: Bahasa Pemrograman Mana yang Terbaik?
Perbandingan komprehensif antara Python dan JavaScript. Jelajahi perbedaan sintaksis, kinerja, kasus penggunaan (backend vs frontend), dan contoh pengkodean.