๐Ÿ“ Jl. Pelda Suryanta, Gedongpanjang, Citamiang, Kota Sukabumi-JABAR 43145โ˜Ž 6285861896310
Beranda/Blog/#4 | Mengenal Struktur Data (List & Dictionary)
Artikel Argalyta

#4 | Mengenal Struktur Data (List & Dictionary)

Di artikel sebelumnya, kita sudah berhasil membuat aplikasi kasir sederhana menggunakan variabel, percabangan `if-else`, dan fungsi.

๐Ÿ—“๏ธ 17 Oct 2026๐Ÿ’ฌ Bisa konsultasi
Butuh bantuan implementasi?

Argalyta bisa membantu website, aplikasi custom, dan sistem bisnis.

Konsultasi Project
#4 | Mengenal Struktur Data (List & Dictionary)
#4 | Mengenal Struktur Data (List & Dictionary)
# Belajar Python Tahap 4: Mengenal Struktur Data (List & Dictionary) serta Cara Menangani Error

Di artikel sebelumnya, kita sudah berhasil membuat aplikasi kasir sederhana menggunakan variabel, percabangan `if-else`, dan fungsi. Namun, pernahkah Anda berpikir: bagaimana jika kita harus menyimpan daftar nama 100 pelanggan atau 500 produk sekaligus? Tentu sangat melelahkan jika harus membuat `pelanggan_1`, `pelanggan_2`, dan seterusnya satu per satu.

Untuk mengatasi hal tersebut, Python menyediakan fitur **Struktur Data** yang memungkinkan kita menyimpan banyak informasi di dalam satu wadah. Selain itu, kita juga akan mempelajari **Error Handling** agar program yang kita buat tidak langsung mati (*crash*) saat pengguna salah memasukkan data. Mari kita pelajari bersama!

---

## 1. List (Menyimpan Banyak Data Secara Berurutan)

**List** adalah tipe data di Python yang berfungsi seperti daftar belanjaan. Anda bisa memasukkan banyak nilai (teks, angka, atau campuran keduanya) ke dalam satu variabel menggunakan tanda kurung siku `[ ]`.

Hal unik di dalam pemrograman adalah urutan item (disebut **Indeks**) selalu dimulai dari angka **0**, bukan 1.

### Contoh Penggunaan List:
Buat file baru bernama `struktur_data.py` di VS Code Anda, lalu ketikkan kode berikut:

```python
# Membuat List daftar buah
daftar_buah = ["Apel", "Jeruk", "Mangga", "Pisang"]

# Menampilkan seluruh isi List
print("Semua buah:", daftar_buah)

# Mengambil data berdasarkan indeks (Ingat: dimulai dari 0)
print("Buah pertama:", daftar_buah[0])  # Hasilnya: Apel
print("Buah ketiga:", daftar_buah[2])   # Hasilnya: Mangga

# Menambahkan item baru ke akhir List menggunakan .append()
daftar_buah.append("Semangka")
print("Setelah ditambah:", daftar_buah)

# Menghapus item dari List menggunakan .remove()
daftar_buah.remove("Jeruk")
print("Setelah Jeruk dihapus:", daftar_buah)
```

Anda juga bisa menggabungkan **List** dengan perulangan `for` untuk menampilkan isinya satu per satu secara rapi:

```python
print("\nDaftar stok buah hari ini:")
for buah in daftar_buah:
    print("- " + buah)
```

---

## 2. Dictionary (Menyimpan Data Berpasangan)

Jika List menggunakan nomor urut (indeks) untuk mengakses data, **Dictionary** menggunakan sistem **Kunci dan Nilai (*Key-Value Pair*)**. Bayangkan seperti buku kamus atau KTP, di mana ada label (`Key`) seperti "Nama", dan ada isinya (`Value`) seperti "Budi".

Dictionary dibuat menggunakan tanda kurung kurawal `{ }`.

### Contoh Penggunaan Dictionary:

```python
# Membuat Dictionary untuk menyimpan profil pelanggan
profil_pelanggan = {
    "nama": "Siti Aminah",
    "umur": 28,
    "kota": "Bandung",
    "member_aktif": True
}

# Mengakses data menggunakan Key (Kunci)
print("Nama Pelanggan:", profil_pelanggan["nama"])
print("Asal Kota:", profil_pelanggan["kota"])

# Mengubah nilai yang sudah ada
profil_pelanggan["kota"] = "Jakarta"

# Menambahkan data baru ke dalam Dictionary
profil_pelanggan["poin_belanja"] = 1500

print("Data terbaru:", profil_pelanggan)
```

---

## 3. Error Handling / Try-Except (Mencegah Program Berhenti Mendadak)

Saat membuat aplikasi nyata, pengguna sering kali melakukan kesalahan yang tidak terduga. Misalnya, program meminta pengguna memasukkan **angka umur**, tetapi pengguna justru mengetik huruf `"dua puluh"`. 

Jika tidak ditangani, Python akan menampilkan pesan *error* merah yang panjang dan program langsung berhenti. Untuk mencegahnya, gunakan blok **`try` dan `except`**.

* **`try`:** Berisi kode utama yang ingin dijalankan oleh program.
* **`except`:** Berisi tindakan penyelamatan jika terjadi *error* pada bagian `try`.

### Contoh Penggunaan Try-Except:

```python
print("=== KALKULATOR PEMBAGIAN AMAN ===")

try:
    angka_1 = int(input("Masukkan angka pertama: "))
    angka_2 = int(input("Masukkan angka pembagi: "))
    
    hasil = angka_1 / angka_2
    print(f"Hasil pembagian adalah: {hasil}")

except ValueError:
    # Menangani error jika pengguna memasukkan huruf, bukan angka
    print("Error: Mohon masukkan angka bulat, bukan huruf atau simbol!")

except ZeroDivisionError:
    # Menangani error jika pengguna membagi angka dengan nol (0)
    print("Error: Angka tidak bisa dibagi dengan nol (0)!")

print("Program selesai dijalankan tanpa crash.")
```

---

## 4. Proyek Praktik: Aplikasi Daftar Tugas (To-Do List) Sederhana

Mari gabungkan **List, Perulangan, Percabangan, dan Error Handling** menjadi sebuah aplikasi pencatat tugas harian yang berjalan terus-menerus di terminal Anda!

Buat file baru bernama `aplikasi_tugas.py` dan jalankan kode di bawah ini:

```python
daftar_tugas = []

while True:
    print("\n=== APLIKASI CATATAN TUGAS ===")
    print("1. Lihat Daftar Tugas")
    print("2. Tambah Tugas Baru")
    print("3. Hapus Tugas")
    print("4. Keluar")
    
    try:
        pilihan = int(input("Pilih menu (1/2/3/4): "))
        
        if pilihan == 1:
            if len(daftar_tugas) == 0:
                print("Belum ada tugas yang dicatat.")
            else:
                print("\nDaftar Tugas Anda:")
                for indeks, tugas in enumerate(daftar_tugas, start=1):
                    print(f"{indeks}. {tugas}")
                    
        elif pilihan == 2:
            tugas_baru = input("Masukkan nama tugas baru: ")
            daftar_tugas.append(tugas_baru)
            print("Berhasil! Tugas telah ditambahkan.")
            
        elif pilihan == 3:
            nomor_hapus = int(input("Masukkan nomor tugas yang ingin dihapus: "))
            tugas_terhapus = daftar_tugas.pop(nomor_hapus - 1)
            print(f"Tugas '{tugas_terhapus}' berhasil dihapus.")
            
        elif pilihan == 4:
            print("Terima kasih telah menggunakan aplikasi ini. Sampai jumpa!")
            break
            
        else:
            print("Pilihan tidak tersedia. Silakan pilih angka 1 sampai 4.")
            
    except ValueError:
        print("Peringatan: Masukkan input berupa angka saja!")
    except IndexError:
        print("Peringatan: Nomor tugas yang Anda masukkan tidak ditemukan!")
```

---

## Penutup

Selamat! Sekarang Anda sudah mampu mengelola banyak data sekaligus menggunakan **List** dan **Dictionary**, serta membuat program yang tangguh dan tahan terhadap kesalahan input berkat **Try-Except**.

Di panduan tahap selanjutnya, kita akan belajar tentang cara **Membaca dan Menyimpan File Eksternal (File I/O)** agar data yang Anda masukkan ke dalam program tidak hilang saat aplikasi ditutup, serta pengenalan tentang **Library / Modul Python**. Teruslah berlatih dan bereksperimen dengan kode Anda!
โ† Kembali ke BlogLihat Aplikasi
Komentar

Diskusi artikel

Tinggalkan komentar atau pertanyaan seputar artikel ini.

0 komentar
Komentar akan diperiksa admin sebelum tampil untuk mencegah spam.
๐Ÿ’ฌ
Belum ada komentar

Jadilah yang pertama memberi komentar di artikel ini.

โ˜Ž