Panduan Lengkap Fungsi len() di Python

N

Fungsi dasar untuk mengetahui ukuran objek.

Dalam dunia pemrograman Python, terdapat banyak fungsi bawaan (built-in functions) yang sangat berguna untuk mempermudah tugas sehari-hari. Salah satu fungsi yang paling fundamental dan sering digunakan adalah len(). Fungsi ini bekerja sebagai alat penghitung universal, memungkinkan pengembang untuk mengetahui "panjang" atau jumlah elemen yang terkandung dalam suatu objek sekuensial.

Apa Itu Fungsi len()?

Fungsi len() (singkatan dari *length*) digunakan untuk mengembalikan jumlah item dalam sebuah objek. Objek yang dapat menerima argumen untuk fungsi len() harus berupa tipe data yang memiliki ukuran terdefinisi, yang umumnya dikenal sebagai *container* atau *sequence*. Ini termasuk tipe data seperti String (teks), List, Tuple, Set, Dictionary, dan bahkan Bytes.

Secara sintaksis, penggunaannya sangat sederhana:

len(objek)

Dimana objek adalah variabel yang ingin Anda ukur ukurannya.

Aplikasi len() pada Berbagai Tipe Data

Kekuatan len() terletak pada fleksibilitasnya. Mari kita lihat bagaimana ia berperilaku pada tipe data utama di Python.

1. String (Teks)

Ketika digunakan pada string, len() akan mengembalikan jumlah karakter dalam string tersebut, termasuk spasi, tanda baca, dan karakter khusus lainnya.

kata = "Halo Dunia"
jumlah_karakter = len(kata)
# Hasilnya adalah 10 (H, a, l, o, spasi, D, u, n, i, a)
print(jumlah_karakter)

2. List dan Tuple (Urutan Terurut)

Pada List dan Tuple, len() menghitung berapa banyak elemen independen yang ada di dalamnya.

data_list = [10, "apel", True, 3.14]
print(len(data_list)) 
# Output: 4

data_tuple = ('a', 'b', 'c')
print(len(data_tuple))
# Output: 3

3. Dictionary (Kamus)

Untuk Dictionary, len() mengembalikan jumlah pasangan *key:value* yang ada di dalamnya, bukan menghitung karakter atau nilai secara individual.

profil = {"nama": "Budi", "usia": 25, "kota": "Jakarta"}
print(len(profil))
# Output: 3 (karena ada 3 pasangan kunci-nilai)

4. Set

Sama seperti List, len() menghitung jumlah elemen unik yang ada dalam Set.

warna = {"merah", "biru", "hijau", "merah"}
print(len(warna))
# Output: 3 (Set otomatis menghilangkan duplikat 'merah')

Perbedaan Penting: len() vs Iterasi Manual

Mengapa kita harus menggunakan len() daripada menghitung elemen secara manual menggunakan perulangan (loop)? Jawabannya terletak pada efisiensi dan kejelasan kode. Fungsi len() diimplementasikan secara efisien di level C (untuk CPython), yang berarti ia sangat cepat, terutama ketika berhadapan dengan objek besar. Kode Anda juga menjadi jauh lebih ringkas dan mudah dibaca.

Apa yang Terjadi Jika Objek Tidak Memiliki Panjang?

Fungsi len() hanya berfungsi pada objek yang mendefinisikan metode khusus yang disebut __len__(). Jika Anda mencoba menggunakan len() pada objek yang tidak mendukung pengukuran panjang, seperti angka integer (int) atau float, Python akan menghasilkan error TypeError.

angka = 42
# print(len(angka)) 
# Akan menghasilkan: TypeError: object of type 'int' has no len()

Ini adalah mekanisme keamanan bawaan Python untuk memastikan bahwa operasi hanya dilakukan pada struktur data yang memang memiliki konsep "panjang".

Penggunaan Lanjutan dalam Kontrol Alur

Selain sekadar mendapatkan nilai, len() seringkali menjadi komponen kunci dalam pernyataan kondisional dan perulangan. Misalnya, Anda mungkin ingin memproses sebuah List hanya jika List tersebut tidak kosong.

daftar_tugas = ["Belanja", "Kirim Email"]

if len(daftar_tugas) > 0:
    print(f"Anda memiliki {len(daftar_tugas)} tugas yang harus diselesaikan.")
else:
    print("Selamat, tidak ada tugas hari ini!")

Memeriksa panjang sebelum mengakses indeks juga merupakan praktik yang baik untuk menghindari error IndexError, meskipun Python menyediakan pengecekan otomatis saat iterasi.

Secara keseluruhan, len() adalah salah satu fungsi paling serbaguna dan wajib dikuasai bagi siapa pun yang menggunakan Python. Pemahaman yang solid tentang kapan dan bagaimana menggunakannya akan sangat meningkatkan kualitas dan efisiensi kode Anda dalam menangani koleksi data.