Hari 3: Struktur Data Python: List, Tuple, Dictionary

Pelajari struktur data Python: list, tuple, dictionary. Kuasai cara menyimpan dan mengakses data untuk analisis. Contoh praktik dan studi kasus!

Struktur Data Python: List, Tuple, Dictionary

Keywords: struktur data python, list python, dictionary python, tuple python, python untuk data

Dari Variabel Tunggal ke Koleksi Data

Di Hari 2, kita telah menguasai variabel dan tipe data dasar Python yang memungkinkan kita menyimpan informasi tunggal seperti angka, teks, atau nilai boolean. Namun dalam analisis data nyata, kita sering bekerja dengan kumpulan data yang terstruktur – seperti daftar produk, data pelanggan, atau informasi transaksi. Di sinilah kita membutuhkan struktur data yang lebih canggih untuk mengelola informasi secara efisien.

Bayangkan Anda harus menyimpan data 100 produk menggunakan variabel terpisah (produk1, produk2, …, produk100). Ini akan sangat tidak efisien dan sulit dikelola! Struktur data Python seperti list, tuple, dan dictionary hadir sebagai solusi elegan untuk mengorganisir koleksi data dengan cara yang terstruktur dan mudah diakses.

Struktur data adalah “kotak penyimpanan” data. Kuasai di Hari 3!

Setiap data analyst profesional harus menguasai seni mengelola koleksi data. Hari ini, kita akan menjelajahi tiga struktur data fundamental dalam Python yang akan menjadi pondasi bagi semua operasi data Anda di masa depan. List, tuple, dan dictionary masing-masing memiliki karakteristik unik yang membuatnya cocok untuk berbagai skenario analisis data. Memahami kapan dan bagaimana menggunakan masing-masing struktur data adalah kunci untuk menulis kode yang efisien dan mudah dibaca.

List: Koleksi Data yang Fleksibel dan Dinamis

List adalah struktur data paling serbaguna dalam Python. List dapat diibaratkan sebagai wadah yang dapat menampung berbagai jenis data dalam urutan tertentu. Karakteristik utama list:

  • Terurut (Ordered): Elemen dalam list memiliki posisi tertentu (indeks) yang dimulai dari 0
  • Dapat diubah (Mutable): Anda dapat menambah, menghapus, atau mengubah elemen setelah list dibuat
  • Mengizinkan duplikat: List dapat berisi elemen dengan nilai yang sama

Membuat dan Mengakses List

Anda dapat membuat list dengan menempatkan elemen-elemen di dalam tanda kurung siku [], dipisahkan oleh koma:

# Membuat list berbagai produk
produk = ["Laptop", "Mouse", "Keyboard", "Monitor"]
harga = [15000000, 250000, 500000, 3000000]

# Mengakses elemen list (indeks dimulai dari 0)
print(produk[0])    # Output: Laptop
print(harga[2])     # Output: 500000

# Mengakses elemen terakhir
print(produk[-1])   # Output: Monitor

Operasi Umum pada List

List memiliki berbagai metode bawaan yang sangat berguna:

# Menambah elemen
produk.append("Webcam")           # Tambah di akhir
produk.insert(1, "Headset")      # Tambah di posisi tertentu

# Menghapus elemen
produk.remove("Mouse")           # Hapus berdasarkan nilai
produk.pop(2)                    # Hapus berdasarkan indeks

# Mengubah elemen
harga[0] = 14500000              # Ubah harga laptop

# Operasi lainnya
print(len(produk))               # Jumlah elemen: 5
print(sorted(harga))             # Urutkan harga: [250000, 500000, 3000000, 14500000]

Mengapa List Penting untuk Data Analyst?

List sangat berguna untuk:

  • Menyimpan kumpulan data yang mungkin berubah (seperti data transaksi harian)
  • Membuat deret waktu (time series data)
  • Menyimpan hasil iterasi atau perhitungan sementara
  • Mempersiapkan data untuk visualisasi atau analisis lebih lanjut

Tuple: Koleksi Data yang Tidak Dapat Diubah

Tuple mirip dengan list, tetapi dengan perbedaan krusial: tuple tidak dapat diubah (immutable) setelah dibuat. Karakteristik tuple:

  • Terurut (Ordered): Elemen memiliki posisi tetap dengan indeks
  • Tidak dapat diubah (Immutable): Elemen tidak dapat ditambah, dihapus, atau diubah setelah pembuatan
  • Mengizinkan duplikat: Sama seperti list

Membuat dan Menggunakan Tuple

Tuple dibuat dengan tanda kurung biasa ():

# Membuat tuple koordinat GPS
koordinat = (6.2088, 106.8456)  # Latitude, Longitude Jakarta

# Membuat tuple dengan satu elemen (perlu koma)
single_tuple = ("data",)

# Mengakses elemen tuple
print(koordinat[0])  # Output: 6.2088
print(koordinat[1])  # Output: 106.8456

# Tuple tidak dapat diubah
# koordinat[0] = 6.3  # Akan menghasilkan error!

Kapan Menggunakan Tuple?

Tuple sangat berguna untuk:

  • Data yang tidak boleh berubah (seperti koordinat, konstanta)
  • Kunci dictionary (karena harus immutable)
  • Data yang lebih aman dari perubahan tidak disengaja
  • Performa yang sedikit lebih baik daripada list untuk data besar

Dictionary: Struktur Data Key-Value yang Powerful

Dictionary adalah struktur data yang paling penting untuk data analyst. Dictionary menyimpan data dalam pasangan key-value, di mana setiap key harus unik. Karakteristik dictionary:

  • Tidak terurut (Unordered): Sebelum Python 3.7, dictionary tidak menjaga urutan. Sekarang sudah terurut.
  • Dapat diubah (Mutable): Anda dapat menambah, menghapus, atau mengubah nilai
  • Key harus unik: Tidak boleh ada key yang sama dalam satu dictionary
  • Key harus immutable: Key bisa berupa string, number, atau tuple, tapi tidak bisa list

Membuat dan Mengakses Dictionary

Dictionary dibuat dengan tanda kurung kurawal {} dengan format key: value:

# Membuat dictionary data produk
produk_dict = {
    "nama": "Laptop Gaming",
    "harga": 15000000,
    "stok": 25,
    "kategori": "Elektronik"
}

# Mengakses nilai menggunakan key
print(produk_dict["nama"])     # Output: Laptop Gaming
print(produk_dict["harga"])    # Output: 15000000

# Mengakses dengan metode get (lebih aman)
print(produk_dict.get("stok")) # Output: 25
print(produk_dict.get("berat", "Tidak ada")) # Output: Tidak ada

Operasi Umum pada Dictionary

# Menambah atau mengubah nilai
produk_dict["diskon"] = 10      # Tambah key baru
produk_dict["stok"] = 30        # Ubah nilai existing

# Menghapus key-value
del produk_dict["diskon"]       # Hapus berdasarkan key
stok = produk_dict.pop("stok")  # Hapus dan ambil nilai

# Metode lainnya
print(produk_dict.keys())       # Semua key: dict_keys(['nama', 'harga', 'kategori'])
print(produk_dict.values())     # Semua value: dict_values(['Laptop Gaming', 15000000, 'Elektronik'])
print(produk_dict.items())      # Semua pasangan key-value

Mengapa Dictionary Sangat Penting?

Dictionary adalah alat paling powerful untuk data analyst karena:

  • Struktur data mirip dengan JSON (format pertukaran data web)
  • Memudahkan representasi data terstruktur (seperti baris database)
  • Akses data sangat cepat (O(1) complexity)
  • Sangat intuitif untuk menyimpan metadata atau atribut data

Studi Kasus: Menyimpan Data Produk dengan Dictionary

Mari kita terapkan pengetahuan kita dalam skenario nyata: menyimpan data produk e-commerce. Kita akan menggunakan dictionary untuk menyimpan informasi lengkap tentang sebuah produk:

Kasus: Sebuah toko online ingin menyimpan data produk dengan informasi:

  • Nama produk
  • Harga
  • Stok
  • Kategori
  • Rating
  • Spesifikasi (berat, dimensi, warna)
# Data produk laptop menggunakan dictionary
laptop = {
    "nama": "ASUS ROG Strix G15",
    "harga": 18500000,
    "stok": 15,
    "kategori": "Laptop Gaming",
    "rating": 4.7,
    "spesifikasi": {
        "processor": "AMD Ryzen 9 5900HX",
        "ram": "16GB DDR4",
        "storage": "1TB NVMe SSD",
        "gpu": "NVIDIA GeForce RTX 3060",
        "berat": 2.3,
        "dimensi": "35.4 x 25.9 x 2.3 cm",
        "warna": "Hitam"
    }
}

# Mengakses data produk
print(f"Produk: {laptop['nama']}")
print(f"Harga: Rp {laptop['harga']:,}")
print(f"Rating: {laptop['rating']}/5")
print(f"Processor: {laptop['spesifikasi']['processor']}")

# Mengupdate stok setelah penjualan
laptop['stok'] -= 3
print(f"Stok tersisa: {laptop['stok']} unit")

# Menambah informasi baru
laptop['garansi'] = "2 tahun"

Contoh Praktik: Dictionary untuk Data Teman

Sekarang, mari kita buat contoh sederhana yang bisa Anda coba sendiri: menyimpan data teman-teman Anda menggunakan dictionary:

# Dictionary data teman
teman = {
    "nama": "Andi Pratama",
    "usia": 25,
    "hobi": ["Fotografi", "Traveling", "Masak"],
    "kota": "Jakarta",
    "status": "Single"
}

# Mengakses data
print(f"Nama: {teman['nama']}")
print(f"Usia: {teman['usia']} tahun")
print(f"Hobi: {', '.join(teman['hobi'])}")

# Menambah hobi baru
teman['hobi'].append("Bermain gitar")

# Mengupdate status
teman['status'] = "Menikah"

# Menampilkan data lengkap
print("\nData lengkap:")
for key, value in teman.items():
    if isinstance(value, list):
        print(f"{key.capitalize()}: {', '.join(value)}")
    else:
        print(f"{key.capitalize()}: {value}")

Kesimpulan

Hari ini kita telah mempelajari tiga struktur data fundamental dalam Python yang akan menjadi senjata utama Anda sebagai data analyst:

  1. List: Koleksi data fleksibel dan dinamis yang cocok untuk data yang mungkin berubah
  2. Tuple: Koleksi data immutable yang aman dan efisien untuk data konstan
  3. Dictionary: Struktur key-value yang powerful untuk data terstruktur dan metadata

Memahami perbedaan dan kegunaan masing-masing struktur data adalah kunci untuk menulis kode Python yang efisien dan mudah dibaca. Dictionary khususnya akan sering Anda gunakan dalam analisis data karena kemampuannya merepresentasikan data kompleks secara intuitif.

Struktur data ini adalah fondasi bagi semua operasi data yang akan kita pelajari di hari-hari berikutnya, mulai dari manipulasi data dengan Pandas hingga visualisasi data. Kuasai dengan baik!

Buat dictionary data teman (nama, usia, hobi). Share kode Anda di kolom komentar! Coba tambahkan informasi lain seperti pekerjaan, kota asal, atau minat khusus. Di Hari 4, kita akan melangkah lebih jauh dengan mempelajari kontrol alur Python: if-else, loop, dan fungsi yang akan membawa kemampuan pemrograman Anda ke level berikutnya. Tetap semangat belajar!

Leave a Comment