Skip to main content

Koleksi tipe data

Python menyediakan beberapa tipe data koleksi yang sering digunakan untuk menyimpan banyak nilai dalam satu variabel. Berikut penjelasan detailnya:


1. List

  • Definisi: List adalah kumpulan data yang terurut (ordered) dan dapat diubah (mutable). Elemen list dapat berupa tipe data apa saja, termasuk list lain (nested list).
  • Ciri-ciri:
    • Bisa berisi elemen dengan tipe data campuran
    • Bisa ditambahkan, dihapus, atau diubah elemennya
    • Mendukung indexing dan slicing
  • Contoh:
# Membuat list
buah = ["apel", "pisang", "jeruk"]

# Mengakses elemen list
print(buah[0]) # Output: apel

# Mengubah elemen
buah[1] = "mangga"

# Menambahkan elemen
buah.append("melon")

# Menghapus elemen
buah.remove("jeruk")

print(buah) # Output: ['apel', 'mangga', 'melon']

Fungsi Bawaan Python untuk List

Berikut beberapa fungsi built-in Python yang sering digunakan dengan list:

FungsiDeskripsiContoh
len()Menghitung jumlah elemenlen([1,2,3]) # 3
max()Mengambil nilai terbesarmax([1,5,2]) # 5
min()Mengambil nilai terkecilmin([1,5,2]) # 1
sum()Menjumlahkan semua elemen numeriksum([1,2,3]) # 6
sorted()Mengembalikan list baru yang terurutsorted([3,1,2]) # [1,2,3]

Metode List

Selain fungsi umum, list juga punya metode bawaan:

MetodeDeskripsiContoh
.append(x)Menambah elemen di akhir listbuah.append("melon")
.insert(i, x)Menambah elemen pada index tertentubuah.insert(1, "anggur")
.extend(iterable)Menambahkan banyak elemen sekaligusbuah.extend(["pepaya","nanas"])
.remove(x)Menghapus elemen tertentu (pertama kali muncul)buah.remove("apel")
.pop([i])Menghapus dan mengembalikan elemen (default terakhir)buah.pop() # hapus 'melon'
.clear()Menghapus semua elemenbuah.clear()
.index(x)Mengembalikan posisi elemen pertama yang cocokbuah.index("jeruk")
.count(x)Menghitung jumlah kemunculan elemenbuah.count("apel")
.sort()Mengurutkan list in-placeangka.sort()
.reverse()Membalik urutan listbuah.reverse()
.copy()Mengembalikan salinan listsalin = buah.copy()

2. Tuple

  • Definisi: Tuple adalah kumpulan data yang terurut (ordered) tetapi tidak dapat diubah (immutable).
  • Ciri-ciri:
    • Elemen tidak bisa ditambah, dihapus, atau diubah setelah tuple dibuat
    • Cocok digunakan untuk data yang bersifat tetap
    • Mendukung indexing dan slicing
  • Contoh:
# Membuat tuple
koordinat = (10, 20)

# Mengakses elemen tuple
print(koordinat[0]) # Output: 10

# Tuple bersarang
data = (1, "Python", (2, 3))

print(data) # Output: (1, 'Python', (2, 3))

Fungsi Bawaan Python untuk Tuple

Fungsi-fungsi berikut bisa digunakan pada tuple:

sama kayak yang di list

click

Metode Tuple

Tuple hanya memiliki dua metode bawaan:

MetodeDeskripsiContoh
.count(x)Menghitung jumlah kemunculan elemen x(1,2,2,3).count(2) # 2
.index(x)Mengembalikan index dari elemen x pertama yang ditemukan(1,2,3).index(2) # 1

3. Set

  • Definisi: Set adalah kumpulan data unik (tidak boleh ada duplikasi) dan tidak terurut (unordered).
  • Ciri-ciri:
    • Tidak mendukung indexing
    • Elemen tidak bisa duplikat
    • Cocok untuk operasi matematika seperti union, intersection, difference
  • Contoh:
# Membuat set
angka = {1, 2, 3, 3, 2}

print(angka) # Output: {1, 2, 3} (duplikasi otomatis dihapus)

# Menambahkan elemen
angka.add(4)

# Operasi himpunan
ganjil = {1, 3, 5, 7}
genap = {2, 4, 6, 8}
print(ganjil.union(genap)) # Gabungan
print(ganjil.intersection(angka)) # Irisan

Fungsi Bawaan Python untuk Set

Fungsi umum yang bisa digunakan pada set:

sama kayak yang di list

click

Metode Set

Set punya banyak metode bawaan untuk manipulasi data dan operasi himpunan:

MetodeDeskripsiContoh
.add(x)Menambahkan elemen x ke sets.add(5)
.update(iterable)Menambahkan banyak elemen sekaliguss.update([6,7])
.remove(x)Menghapus elemen x (error jika tidak ada)s.remove(3)
.discard(x)Menghapus elemen x tanpa error jika tidak adas.discard(10)
.pop()Menghapus elemen secara acak dan mengembalikannyas.pop()
.clear()Menghapus semua elemen sets.clear()
.copy()Mengembalikan salinan sett = s.copy()
.union(other)Gabungan dua sets.union(t)
.intersection(other)Irisan dua sets.intersection(t)
.difference(other)Selisih dua sets.difference(t)
.symmetric_difference(other)Selisih simetris (elemen unik di kedua set)s.symmetric_difference(t)
.issubset(other)Mengecek apakah s adalah subset dari others.issubset(t)
.issuperset(other)Mengecek apakah s adalah superset dari others.issuperset(t)
.isdisjoint(other)Mengecek apakah s dan other tidak ada irisans.isdisjoint(t)

4. Frozenset

  • Definisi: Frozenset adalah versi immutable dari set. Setelah dibuat, elemennya tidak dapat ditambah atau dihapus.
  • Ciri-ciri:
    • Tetap mendukung operasi matematika himpunan
    • Lebih aman digunakan jika ingin data set yang tidak bisa diubah
  • Contoh:
# Membuat frozenset
angka = frozenset([1, 2, 3, 4])

print(angka) # Output: frozenset({1, 2, 3, 4})

# Tidak bisa menambahkan atau menghapus elemen
# angka.add(5) -> Akan error

Fungsi Bawaan Python untuk Frozenset

Fungsi umum yang bisa digunakan pada frozenset:

sama kayak yang di list

click

Metode Frozenset

Karena immutable, frozenset tidak punya metode modifikasi (add, remove, dll). Namun, mendukung semua metode operasi himpunan seperti:

MetodeDeskripsiContoh
.union(other)Gabungan dua frozenset/setfs.union({5,6})
.intersection(other)Irisanfs.intersection({2,3})
.difference(other)Selisihfs.difference({1})
.symmetric_difference(other)Selisih simetrisfs.symmetric_difference({3,4})
.issubset(other)Cek subsetfs.issubset({1,2,3,4,5})
.issuperset(other)Cek supersetfs.issuperset({1,2})
.isdisjoint(other)Cek tidak ada irisanfs.isdisjoint({6,7})
.copy()Salinan frozensetfs.copy()

5. Dictionary (dict)

  • Definisi: Dictionary adalah kumpulan pasangan key-value. Setiap elemen memiliki key (unik) dan value.
  • Ciri-ciri:
    • Key harus unik
    • Value dapat berupa tipe data apa saja
    • Data tidak terurut sebelum Python 3.7, tetapi mulai 3.7 urutan dimasukkan dipertahankan
  • Contoh:
# Membuat dictionary
mahasiswa = {"nama": "Ali", "umur": 20, "jurusan": "Informatika"}

# Mengakses value dengan key
print(mahasiswa["nama"]) # Output: Ali

# Menambahkan pasangan key-value baru
mahasiswa["angkatan"] = 2022

# Mengubah value
mahasiswa["umur"] = 21

# Menghapus elemen
del mahasiswa["jurusan"]

print(mahasiswa) # Output: {'nama': 'Ali', 'umur': 21, 'angkatan': 2022}

Fungsi Bawaan Python untuk Dictionary

Fungsi umum yang bisa digunakan pada dictionary:

FungsiDeskripsiContoh
len()Menghitung jumlah pasangan key-valuelen(mahasiswa)
sorted()Mengurutkan key dictionary dan mengembalikan listsorted(mahasiswa)

Metode Dictionary

Dictionary memiliki banyak metode bawaan:

MetodeDeskripsiContoh
.keys()Mengembalikan semua keymahasiswa.keys()
.values()Mengembalikan semua valuemahasiswa.values()
.items()Mengembalikan semua pasangan key-valuemahasiswa.items()
.get(key, default)Mengambil nilai dari key (aman, tidak error jika key tidak ada)mahasiswa.get("nama")
.update(other)Mengupdate dictionary dengan pasangan key-value barumahasiswa.update({"umur": 22})
.pop(key, default)Menghapus elemen berdasarkan keymahasiswa.pop("umur")
.popitem()Menghapus pasangan terakhir yang dimasukkanmahasiswa.popitem()
.setdefault(key, default)Mengembalikan nilai dari key, jika tidak ada maka tambahkan dengan defaultmahasiswa.setdefault("alamat", "Pamekasan")
.clear()Menghapus semua elemen dictionarymahasiswa.clear()
.copy()Mengembalikan salinan dictionarysalin = mahasiswa.copy()

Kesimpulan

Tipe DataUrutBisa DiubahDuplikatCocok Untuk
ListYaYaYaData fleksibel yang sering berubah
TupleYaTidakYaData tetap/konstanta
SetTidakYaTidakOperasi himpunan & data unik
FrozensetTidakTidakTidakData unik yang harus tetap
DictionaryYa*YaKey unikData berpasangan (key-value)
Catatan

sejak Python 3.7, dict mempertahankan urutan sesuai saat elemen ditambahkan.