BASE_STATION // GUIDES // PYTHON LANGUAGE

Dasar Pemrograman Python #6: Mengenal List, Tuple, Set, dan Dictionary

LOG_DATE: 2026.09.29 | AUTHOR: SYSTEM_LEAD
Dasar Pemrograman Python #6: Mengenal List, Tuple, Set, dan Dictionary

⚡ INTEL TERKAIT: Analisis Komparatif Lenovo Core i5 vs i7: Evaluasi Arsitektur, Termal, dan Optimalisasi Beban Kerja

Arsitektur Data Komposit dalam Ekosistem Python

Dalam rekayasa perangkat lunak modern, pemilihan struktur data menentukan batas efisiensi komputasi dan manajemen memori sebuah sistem. Python, sebagai bahasa tingkat tinggi yang mendominasi ranah otomasi dan kecerdasan buatan, menyediakan empat tipe data kolektif utama: List, Tuple, Set, dan Dictionary.

Sebagai insinyur perangkat lunak, memahami karakteristik internal, kompleksitas waktu (time complexity), dan jejak memori dari masing-masing struktur ini adalah prasyarat mutlak untuk membangun sistem yang resilien dan berperforma tinggi.


1. List: Mutable Array Berperforma Dinamis

List adalah struktur data sekuensial yang paling sering digunakan. Secara arsitektural, List diimplementasikan sebagai dynamic array (susunan dinamis) dari referensi objek di dalam memori.

  • Karakteristik: Ordered (berurutan), mutable (dapat dimodifikasi), dan mengizinkan duplikasi nilai.
  • Implikasi Performa:
    • Akses elemen berdasarkan indeks (O(1)) sangat efisien.
    • Penambahan elemen di akhir (append) berjalan cepat, namun penyisipan atau penghapusan di awal/tengah memerlukan pergeseran memori (O(n)).
# Inisialisasi arsitektur List
server_cluster = ["node-01", "node-02", "node-03"]
server_cluster.append("node-04")  otimal untuk penambahan dinamis

2. Tuple: Immutable Sequence untuk Integritas Sistem

Berbeda dengan List, Tuple dirancang sebagai struktur data yang tidak dapat diubah (immutable) setelah alokasi memori selesai.

  • Karakteristik: Ordered, immutable, mengizinkan duplikasi.
  • Implikasi Performa: Karena ukuran dan isinya bersifat permanen, Python mengalokasikan memori secara lebih efisien untuk Tuple. Struktur ini ideal digunakan sebagai konstanta atau kunci dalam dictionary (karena sifatnya yang hashable), menjamin integritas data dari modifikasi runtime yang tidak sah.
# Konfigurasi sistem dengan Tuple (Read-Only)
DATABASE_CONFIG = ("127.0.0.1", 5432, "production_db")

3. Set: Koleksi Unik Berbasis Algoritma Hashing

Set adalah implementasi dari himpunan matematis. Struktur ini tidak mempertahankan urutan elemen dan menolak duplikasi.

  • Karakteristik: Unordered, mutable, elemen unik (tidak ada duplikasi).
  • Implikasi Performa: Di balik layar, Set menggunakan tabel hash (hash table). Hal ini membuat operasi pencarian (membership test dengan operator in), interseksi, dan union berjalan sangat cepat dengan kompleksitas rata-rata O(1), jauh melampaui performa pencarian linier pada List (O(n)).
# Filter alamat IP unik menggunakan Set
active_connections = {"192.168.1.10", "192.168.1.15", "192.168.1.10"}
print(active_connections)  # Output hanya berisi entri unik

4. Dictionary: Key-Value Store Berkecepatan Tinggi

Dictionary (dict) adalah peta asosiatif (associative array) yang memetakan kunci (key) unik ke nilai tertentu (value).

  • Karakteristik: Key-value pair, mutable, kunci harus unik dan hashable.
  • Implikasi Performa: Seperti Set, Dictionary dioptimalkan menggunakan tabel hash. Operasi pengambilan, penambahan, dan penghapusan nilai berdasarkan kunci dieksekusi dalam waktu konstan O(1) pada kondisi optimal. Ini adalah fondasi dari penyimpanan cache, indeks database dalam memori, dan deserialisasi JSON.
# Pemetaan status node sistem
system_telemetry = {
    "node-01": {"cpu_load": 12.4, "status": "OPTIMAL"},
    "node-02": {"cpu_load": 89.1, "status": "CRITICAL"}
}

Matriks Keputusan Arsitektur Data

Struktur Data Urutan (Ordered) Bisa Diubah (Mutable) Duplikasi Kompleksitas Pencarian (Lookup)
List Ya Ya Ya O(n)
Tuple Ya Tidak Ya O(n)
Set Tidak Ya Tidak O(1)
Dictionary Ya (Python 3.7+) Ya Kunci Unik O(1) (berdasarkan Key)

Kesimpulan

Pemilihan struktur data yang tepat dalam Python bukan sekadar masalah sintaksis, melainkan keputusan arsitektural yang berdampak langsung pada latensi dan konsumsi sumber daya perangkat keras. Gunakan List untuk data sekuensial yang dinamis, Tuple untuk data konstan yang aman, Set untuk eliminasi duplikasi berkecepatan tinggi, dan Dictionary untuk pemetaan relasional berkinerja optimal.

// TRANSMIT PROTOCOL: SHARE TO NETWORK