Lewati ke konten utama

Metode index() pada List Python Dijelaskan dengan Contoh

Pelajari cara menggunakan fungsi index() di Python untuk menemukan posisi elemen dalam list.
Diperbarui 5 Jun 2026  · 6 mnt baca

Dalam Python, sebuah struktur data membantu Anda mengatur dan menyimpan data secara efisien. Salah satu struktur yang umum dan serbaguna adalah list, yang dapat menampung berbagai tipe data dalam urutan tertentu. Python juga menyediakan banyak fungsi atau metode untuk bekerja dengan list.

Dalam tutorial ini, Anda akan mempelajari fungsi index() di Python. Metode index() mencari sebuah elemen dalam list dan mengembalikan posisi/indeksnya. Pertama, tutorial ini akan memperkenalkan Anda pada list, lalu Anda akan melihat beberapa contoh sederhana cara menggunakan fungsi index().

Untuk menjalankan semua contoh kode dalam tutorial ini dengan mudah, Anda dapat membuat buku kerja DataLab secara gratis yang sudah terpasang Python dan berisi semua contoh kode.

Apa itu Indexing di Python?

Dalam Python, indexing mengacu pada proses mengakses elemen tertentu dalam sebuah urutan, seperti string atau list, menggunakan posisinya atau nomor indeks. Indexing di Python dimulai dari 0, yang berarti elemen pertama dalam urutan memiliki indeks 0, elemen kedua memiliki indeks 1, dan seterusnya. Misalnya, jika kita memiliki string "Hello", kita dapat mengakses huruf pertama "H" menggunakan indeks 0 dengan notasi kurung siku: string[0].

Fungsi bawaan Python index() adalah alat yang berguna untuk menemukan indeks suatu elemen tertentu dalam sebuah urutan. Fungsi ini menerima argumen berupa nilai yang dicari dan mengembalikan indeks kemunculan pertama dari nilai tersebut dalam urutan.

Jika nilai tidak ditemukan dalam urutan, fungsi ini akan memunculkan ValueError. Misalnya, jika kita memiliki list [1, 2, 3, 4, 5], kita dapat menemukan indeks nilai 3 dengan memanggil list.index(3), yang akan mengembalikan nilai 2 (karena 3 adalah elemen ketiga dalam list, dan indexing dimulai dari 0).

Fungsi index() adalah alat yang kuat di Python karena menyederhanakan proses menemukan indeks suatu elemen dalam urutan, sehingga tidak perlu menulis loop atau pernyataan kondisional. Fungsi ini sangat berguna saat bekerja dengan dataset besar atau struktur yang kompleks, di mana pencarian manual dapat memakan waktu dan rawan kesalahan.

Apa itu Fungsi index()?

Metode index() mengembalikan indeks terendah dalam list tempat elemen yang dicari muncul.

Mari kita coba:

list_numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
element = 3
print(list_numbers.index(element)) # 2

Jika elemen yang tidak ada dicari, maka akan memunculkan ValueError.

list_numbers = [4, 5, 6, 7, 8, 9, 10]
element = 3 # Not in the list
print(list_numbers.index(element)) # Throws a ValueError

Bekerja dengan String

Mari kita coba dengan elemen string:

list_numbers = [1, 'two', 3, 4, 5, 6, 7, 8, 9, 10]
element = 'two'
print(list_numbers.index(element)) # 1

Catatan: Saat mencari string, index() peka huruf besar/kecil. Misalnya, 'Hello'.index('h') akan memunculkan ValueError.

Menemukan Kemunculan Pertama

Bayangkan Anda memiliki lebih dari satu kemunculan sebuah elemen, maka index() akan memberi Anda posisi pertama tempat elemen tersebut muncul.

list_numbers = [3, 1, 2, 3, 3, 4, 5, 6, 3, 7, 8, 9, 10]
element = 3
print(list_numbers.index(element)) # 0

Posisi yang dikembalikan adalah 0, karena 3 pertama kali muncul di posisi pertama atau indeks ke-0 dalam Python.

Berikut yang terjadi secara internal: index menelusuri semua nilai mulai dari posisi pertama (indeks ke-0), mencari elemen yang Anda cari. Saat menemukan nilai tersebut, ia mengembalikan posisinya dan menghentikan proses. Namun, ini kurang efisien saat menelusuri list yang besar dan Anda perlu mendapatkan posisi sesuatu yang berada di dekat akhir list.

Menggunakan Parameter Start dan Stop

list_numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
element = 7
print(list_numbers.index(element, 5, 8)) # 6

Jadi sintaksnya adalah: list_name.index(element, start, stop).

Di sini nilai start dan stop bersifat opsional. Gunakan hanya saat benar-benar yakin tentang rentangnya; jika tidak, Anda akan mendapatkan ValueError, seperti di bawah ini.

list_numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
element = 7
print(list_numbers.index(element, 1, 5)) # Throws a ValueError

Menemukan Semua Kemunculan

Karena index() hanya mengembalikan kecocokan pertama untuk sebuah objek, Anda dapat menggunakan list comprehension, atau generator expression jika Anda membutuhkan posisi dari lebih banyak kecocokan dalam list. Berikut caranya:

list_numbers = [3, 1, 2, 3, 3, 4, 5, 6, 3, 7, 8, 9, 10]

# List comprehension
print([i for i, n in enumerate(list_numbers) if n == 3]) # [0, 3, 4, 8]
list_numbers = [3, 1, 2, 3, 3, 4, 5, 6, 3, 7, 8, 9, 10]
g = (i for i, n in enumerate(list_numbers) if n == 3) # Generator expression

print("Generators store values, the first value here is:", next(g), ". Then the next is:", next(g), "followed by ", next(g),"and finally ", next(g))

# Generators store values, the first value here is: 0. Then the next is: 3 followed by  4 and finally  8

Generator hemat memori karena menghasilkan item satu per satu alih-alih menyimpan semua hasil seperti list comprehension.

Pemikiran Akhir

Selamat, Anda baru saja mempelajari fungsi index() di Python! Anda telah melihat bagaimana fungsi ini dapat membantu Anda bekerja dengan list. Anda juga telah diperkenalkan dengan beberapa konsep baru. Untuk mempelajari lebih lanjut tentang list comprehension, lihat tutorial Python List Comprehension dari DataCamp. Tutorial Python Iterator dari DataCamp membahas lebih lanjut tentang generator dan generator expression.


Sejal Jaiswal's photo
Author
Sejal Jaiswal
LinkedIn

Saya telah bekerja di berbagai industri dan mengenakan banyak peran: pengembang perangkat lunak, peneliti machine learning, ilmuwan data, manajer produk. Namun pada intinya, saya adalah seorang programmer yang gemar belajar dan berbagi pengetahuan!

FAQs

Apa yang terjadi jika beberapa nilai cocok dengan elemen yang saya cari?

Metode index() hanya mengembalikan indeks dari kemunculan pertama elemen yang cocok. Jika Anda memerlukan semua posisi, gunakan list comprehension dengan enumerate().

Dapatkah saya menggunakan index() dengan tuple atau string?

Ya! Metode index() berfungsi pada tipe urutan apa pun, termasuk tuple dan string:

my_tuple = (1, 2, 3, 2)
print(my_tuple.index(2))  # Output: 1

text = "hello world"
print(text.index('o'))    # Output: 4

Apakah ada cara menangani ValueError dengan baik?

Ya, bungkus pemanggilan index() dalam blok try...except untuk menghindari crash jika elemen tidak ditemukan:

my_list = [1, 2, 3]
try:
    print(my_list.index(4))
except ValueError:
    print("Element not found.")

Bagaimana cara mencari dari akhir list?

Metode index() tidak mendukung pencarian terbalik. Untuk menemukan kemunculan terakhir, balikkan list secara manual atau gunakan comprehension:

my_list = [1, 2, 3, 2, 1]
last_index = len(my_list) - 1 - my_list[::-1].index(2)
print(last_index)  # Output: 3

Apa bedanya index() dengan find()?

Metode find() digunakan pada string dan mengembalikan -1 alih-alih memunculkan error saat nilai tidak ditemukan. List tidak memiliki metode find().

text = "hello"
print(text.find('e'))  # Output: 1
print(text.find('z'))  # Output: -1

Bisakah saya menggunakan index() dengan list bersarang?

Ya, namun hanya pada tingkat atas. index() tidak mencari ke dalam struktur bersarang.

nested_list = [[1, 2], [3, 4]]
print(nested_list.index([3, 4]))  # Output: 1
# This won't work: nested_list.index(3)

Apa itu error "list index out of range"?

Error "list index out of range" terjadi ketika Anda mencoba mengakses indeks yang berada di luar rentang indeks valid untuk sebuah list. Misalnya, jika suatu list memiliki 5 elemen, indeks yang valid adalah 0 hingga 4. Jika Anda mencoba mengakses indeks yang lebih besar atau sama dengan 5, Anda akan mendapatkan error ini.

Untuk menghindari error "list index out of range", pastikan indeks yang ingin Anda akses berada dalam rentang indeks yang valid untuk list tersebut. Anda dapat menggunakan fungsi len() untuk mendapatkan panjang list dan memeriksa apakah sebuah indeks berada dalam rentang indeks yang valid.

Apa itu error "list indices must be integers"?

Error "list indices must be integers" terjadi ketika Anda mencoba menggunakan nilai non-integer sebagai indeks list. Misalnya, jika Anda mencoba menggunakan angka pecahan atau string sebagai indeks list, Anda akan mendapatkan error ini.

Untuk menghindari error "list indices must be integers", pastikan Anda menggunakan nilai integer sebagai indeks list. Jika Anda perlu menggunakan nilai non-integer sebagai indeks, Anda dapat mengonversinya menjadi integer dengan fungsi int().

Topik

Pelajari lebih lanjut tentang Python dengan kursus-kursus ini!

Kursus

Pengantar Python

4 Hr
6.9M
Kuasai dasar-dasar analisis data dengan Python dalam 4 jam. Kursus online ini memperkenalkan antarmuka Python dan pustaka populer.
Lihat DetailRight Arrow
Mulai Kursus
Lihat Lebih BanyakRight Arrow
Terkait

blogs

Tutorial Korelasi di R

Dapatkan pengenalan dasar-dasar korelasi di R: pelajari lebih lanjut tentang koefisien korelasi, matriks korelasi, plotting korelasi, dan sebagainya.
David Woods's photo

David Woods

13 mnt

blogs

Spaghetti Plot dan Jalur Badai

Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Hugo Bowne-Anderson's photo

Hugo Bowne-Anderson

13 mnt

blogs

12 Alternatif ChatGPT Terbaik yang Bisa Anda Coba pada 2026

Artikel ini menyajikan daftar alternatif ChatGPT yang akan meningkatkan produktivitas Anda.
Javier Canales Luna's photo

Javier Canales Luna

14 mnt

blogs

40 Pertanyaan Wawancara DBMS Teratas di 2026

Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Dario Radečić's photo

Dario Radečić

15 mnt

Lihat Lebih BanyakLihat Lebih Banyak