Belajar Python: Fungsi len Pada Python — Cara Mengukur Panjang Data

| | Python
Belajar Python: Fungsi len Pada Python — Cara Mengukur Panjang Data

Fungsi len() adalah salah satu fungsi bawaan Python yang paling sering digunakan. Fungsinya sederhana: menghitung panjang atau jumlah item dari suatu objek. Tapi meskipun sederhana, len() bekerja di berbagai tipe data — dari string, list, tuple, sampai dictionary dan set.

1. Apa itu Fungsi len()?

len() adalah fungsi bawaan Python yang mengembalikan panjang (jumlah item) dari sebuah objek. Nilai yang dikembalikan selalu bertipe integer.

>>> len("PemburuKode")
11

2. Sintaks Dasar

len(objek)

Fungsi ini hanya membutuhkan satu parameter: objek yang ingin diukur panjangnya. Objek bisa berupa:

  • Sequence: string, bytes, list, tuple, range
  • Collection: dictionary, set, frozenset

3. Contoh Penggunaan di Berbagai Tipe Data

String

>>> len("")
0
>>> len("halo")
4
>>> len("Pemburu Kode")
13  # spasi dihitung sebagai satu karakter

List

>>> len([])
0
>>> len([1, 2, 3, 4, 5])
5
>>> len([[1,2], [3,4], [5,6]])
3  # list di dalam list dihitung sebagai satu item

Tuple

>>> len(())
0
>>> len(("a", "b", "c"))
3

Dictionary

>>> len({})
0
>>> len({'nama': 'Budi', 'umur': 25})
2  # yang dihitung adalah jumlah key

Set

>>> len(set())
0
>>> len({1, 2, 3, 4, 5})
5
>>> len({1, 1, 2, 2, 3})
3  # set otomatis menghilangkan duplikat

Range

>>> len(range(10))
10
>>> len(range(5, 10))
5

4. Kode Lengkap dengan Output

# String
tes_string = 'halo halo bandung'
print(f"'{tes_string}' memiliki panjang:", len(tes_string))
# Output: 'halo halo bandung' memiliki panjang: 16

# List
tes_list = [6, 7, 8, 9, 10]
print(tes_list, 'memiliki panjang:', len(tes_list))
# Output: [6, 7, 8, 9, 10] memiliki panjang: 5

# Dictionary
tes_dict = {11: 'Aa', 22: 'Bb', 33: 'Cc'}
print(tes_dict, 'memiliki panjang:', len(tes_dict))
# Output: {11: 'Aa', 22: 'Bb', 33: 'Cc'} memiliki panjang: 3

# Range
tes_range = range(6, 9)
print(tes_range, 'memiliki panjang:', len(tes_range))
# Output: range(6, 9) memiliki panjang: 3

# Byte
tes_byte = b'\x00\x10'
print(tes_byte, 'memiliki panjang:', len(tes_byte))
# Output: b'\x00\x10' memiliki panjang: 2

5. Error yang Sering Terjadi

# TypeError: object of type 'int' has no len()
len(123)  # Error! Integer tidak punya panjang

# TypeError: object of type 'bool' has no len()
len(True)  # Error! Boolean tidak punya panjang

# TypeError: object of type 'NoneType' has no len()
len(None)  # Error! None tidak punya panjang

Tips: Selalu pastikan data yang Anda berikan ke len() adalah tipe yang punya panjang (iterable atau collection).

6. Studi Kasus: Validasi Input Form

def validasi_username(username):
    panjang = len(username)
    if panjang < 3:
        return "Username terlalu pendek (minimal 3 karakter)"
    elif panjang > 20:
        return "Username terlalu panjang (maksimal 20 karakter)"
    elif not username.isalnum():
        return "Username hanya boleh huruf dan angka"
    else:
        return "Username valid!"

print(validasi_username("ab"))     # Username terlalu pendek
print(validasi_username("Budi"))   # Username valid!
print(validasi_username("user123")) # Username valid!

Tips Menulis Python yang Efektif

  1. Gunakan list comprehension[x*2 for x in range(10)] lebih ringkas dan cepat daripada loop biasa.
  2. Manfaatkan built-in functionssum(), map(), filter(), any(), all() sering lebih efisien daripada implementasi manual.
  3. Write idiomatic Python — Ikuti PEP 8, gunakan snake_case untuk variabel/fungsi, UPPER_CASE untuk konstanta.
  4. Gunakan f-stringsf"Halo, {nama}" lebih bersih daripada concatenation atau .format().
  5. Exception handling — Tangkap exception spesifik (ValueError, TypeError) bukan except: umum.

Python yang idiomatis lebih mudah dibaca, dipelihara, dan lebih sedikit bug-nya.

Artikel Terkait

Kesimpulan

Fungsi len() adalah tool sederhana tapi sangat berguna di Python. Mulai dari menghitung panjang string, jumlah item dalam list, sampai validasi input — len() hampir selalu dipakai di setiap project Python. Ingat: len() hanya bekerja pada objek yang memiliki konsep “panjang” (iterable dan collection), bukan pada angka atau boolean.

Sigit N avatar
Tentang Sigit N
Full-stack developer & technical writer. Berpengalaman di PHP, Laravel, NodeJS, MySQL, dan Python. Aktif menulis tutorial pemrograman dan maintaining open-source projects di PemburuKode sejak 2021.