Belajar Python: Mengenal Struktur Data List
Bagaimana caranya menyimpan banyak data dalam satu veriabel?
Jawabannya menggunakan List.
List adalah struktur data pada python yang mampu menyimpan lebih dari satu data, seperti array.
Pada kesempatan ini, kita akan membahas cara menggunakan list di Python dari yang paling sederhana sampai yang sedikit kompleks.
Apa saja poin-poin yang akan dipelajari?
- Cara Membuat List dan Mengisinya
- Cara Mangambil nilai dari List
- Cara Menambahkan dan Menghapus isi List
- Operasi pada List
- List multi dimensi
Selamat menyimak…
Cara Membuat List di Python
List dapat kita buat seperti membuat variabel biasa, namun nilai variabelnya diisi dengan tanda kurung siku ([]
).
Contoh:
# Membuat List kosong
warna = []
# Membuat list dengan isi 1 item
hobi = ["membaca"]
Apabila list-nya memiliki lebih dari satu isi, maka kita bisa memisahnya dengan tanda koma.
Contoh:
buah = ["jeruk", "apel", "mangga", "duren"]
Jenis data apa saja yang boleh diisi ke dalam List?
list dapat diisi dengan tipe data apa saja, string, integer, float, double, boolean, object, dan sebagainya.
Kita juga bisa mencampur isinya.
Contoh:
laci = ["buku", 21, True, 34.12]
Ada empat jenis tipe data pada list laci
:
"buku"
adalah tipe data string;21
adalah tipe data integer;True
adalah tipe data boolean;- dan
34.12
adalah tipe data float.
Cara Mengambil Nilai dari List
Setelah kita tahu cara membuat dan menyimpan data di dalam List, mari kita coba mengambil datanya.
List sama seperti array, list juga memiliki nomer indeks untuk mengakses data atau isinya.
Nomer indeks list selalu dimulai dari nol (0
).
Nomer indeks ini yang kita butuhkan untuk mengambil isi (item) dari list.
Contoh:
# Kita punya list nama-nama buah
buah = ["apel", "anggur", "mangga", "jeruk"]
# Misanya kita ingin mengambil mangga
# Maka indeknya adalah 2
print buah[2]
Akan menghasilkan output:
"mangga"
Horee! dapat mangga. 😄
Latihan 1: Membuat Program dengan List
Untuk memantapkan pemahaman, silahkan coba latihan berikut.
- Buat sebuah list untuk menyimpan kenalanmu
- Isi list sebanyak 5
- Tampilkan isi list indeks nomer 3
- Tampilkan semua teman dengan perulangan
- Tampilkan panjang list
Mari kita coba…
# Buat list untuk menampung nama-nama teman
my_friends = ["Anggun", "Dian", "Agung", "Adi", "Adam"]
# Tampilkan isi list my_friends dengan nomer indeks 3
print "Isi my_friends indeks ke-3 adalah: {}".format(my_friends[3])
# Tampilkan semua daftar teman
print "Semua teman: ada {} orang".format(len(my_friends))
for friend in my_friends:
print friend
Pada kode di atas, kita menggunakan fungsi len()
untuk mengambil panjang list.
Hasil outputnya:
Isi my_friends indeks ke-3 adalah: Adi
Semua teman: ada 5 orang
Anggun
Dian
Agung
Adi
Adam
Mengganti Nilai List
List bersifat mutable, artinya isinya bisa kita ubah-ubah.
Contoh:
# list mula-mula
buah = ["jeruk", "apel", "mangga", "duren"]
# mengubah nilai index ke-2
buah[2] = "kelapa"
Maka "mangga"
akan diganti dengan "kelapa"
.
["jeruk", "apel", "kelapa", "duren"]
Menambahkan Item List
Tedapat Tiga metode (method) atau fungsi yang bisa digunakan untuk menambahkan isi atau item ke List:
prepend(item)
menambahkan item dari depan;append(item)
menambahkan item dari belakang.insert(index, item)
menambahkan item dari indeks tertentu
Contoh:
#list mula-mula
buah = ["jeruk", "apel", "mangga", "duren"]
# Tambahkan manggis
buah.append("manggis")
Hasilnya "manggis"
akan ditambahkan setelah item terakhir.
["jeruk", "apel", "mangga", "duren", "manggis"]
Metode yang kedua menggunakan prepend()
.
Metode prepend()
akan menambahkan item dari depan atau awal list.
Contoh:
#list mula-mula
buah = ["jeruk", "apel", "mangga", "duren"]
buah.prepend("anggur")
Maka "anggur"
akan ditambahkan pada awal list.
["anggur","jeruk", "apel", "mangga", "duren"]
Selain prepend()
dan append()
kita juga bisa mengginakan method insert()
untuk menambahkan item pada indeks tertentu.
Contoh:
#list mula-mula
buah = ["jeruk", "apel", "mangga", "duren"]
buah.insert(2, "duren")
Latihan 2: Membuat Program dengan List
Sekarang mari kita coba membuat program dengan memanfaatkan method prepend()
dan append()
.
Silahkan langsung di ketik dan dicoba.
# Membuat list kosong untuk menampung hobi
hobi = []
stop = False
i = 0
# Mengisi hobi
while(not stop):
hobi_baru = raw_input("Inputkan hobi yang ke-{}: ".format(i))
hobi.append(hobi_baru)
# Increment i
i += 1
tanya = raw_input("Mau isi lagi? (y/t): ")
if(tanya == "t"):
stop = True
# Cetak Semua Hobi
print "=" * 10
print "Kamu memiliki {} hobi".format(len(hobi))
for hb in hobi:
print "- {}".format(hb)
Coba eksekusi dan inputkan sebuah nilai.
petanikode@imajinasi ~ $ python hobi.py
Inputkan hobi yang ke-0: Membaca
Mau isi lagi? (y/t): y
Inputkan hobi yang ke-1: Menulis
Mau isi lagi? (y/t): y
Inputkan hobi yang ke-2: Main Game
Mau isi lagi? (y/t): y
Inputkan hobi yang ke-3: Ngoding
Mau isi lagi? (y/t): t
==========
Kamu memiliki 4 hobi
- Membaca
- Menulis
- Main Game
- Ngoding
Menghapus Item di List
Untuk menghapus salah satu isi dari List, kita bisa menggunakan perintah del
.
Perintah del
akan menghapus sebuah variabel dari memori.
Contoh:
# Membuat List
todo_list = [
"Balajar Python",
"Belajar Django",
"Belajar MongoDB",
"Belajar Sulap",
"Belajar Flask"
]
# Misalkan kita ingin menghapus "Belajar Sulap"
# yang berada di indeks ke-3
del todo_list[3]
print todo_list
Hasilnya, "Belajar Sulap"
akan dihapus:
['Balajar Python', 'Belajar Django', 'Belajar MongoDB', 'Belajar Flask']
Selain menggunakan perintah del
, kita juga bisa menggunakan method remove()
dengan paramter item yang akan dihapus.
Contoh:
# mula-mula kita punya list
a = ["a", "b", "c", "d"]
# kemudian kita hapus b
a.remove("b")
print a
Hasilnya:
["a", "c", "d"]
Memotong list
Seperti string, list juga dapat dipotong-potong.
Contoh:
# Kita punya list warna
warna = ["merah", "hijau", "kuning", "biru", "pink", "ungu"]
# Kita potong dari indeks ke-1 sampai ke-5
print warna[1:5]
Hasilnya:
['hijau', 'kuning', 'biru', 'pink']
Operasi List
Ada beberapa operasi yang bisa dilakukan terhadap List, diantaranya:
- Penggabungan (
+
) - Perkalian (
*
)
Contoh:
# Beberapa list lagu
list_lagu = [
"No Women, No Cry",
"Dear God"
]
# playlist lagu favorit
playlist_favorit = [
"Break Out",
"Now Loading!!!"
]
# Mari kita gabungkan keduanya
semua_lagu = list_lagu + playlist_favorit
print semua_lagu
Hasilnya:
['No Women, No Cry', 'Dear God', 'Break Out', 'Now Loading!!!']
Sedangkan untuk operasi perkalian hanya dapat dilakukan dengan bilangan.
Contoh:
# playlist lagu favorit
playlist_favorit = [
"Break Out",
"Now Loading!!!"
]
# ulangi sebanyak 5x
ulangi = 5
now_playing = playlist_favorit * ulangi
print now_playing
Hasilnya:
['Break Out', 'Now Loading!!!', 'Break Out', 'Now Loading!!!', 'Break Out', 'Now Loading!!!', 'Break Out', 'Now Loading!!!', 'Break Out', 'Now Loading!!!']
List Multi Dimensi
Pada contoh-contoh di atas, kita hanya membuat list satu dimensi saja.
List dapat juga memiliki lebih dari satu dimensi atau disebut dengan multi dimensi.
List multi dimensi biasanya digunakan untuk menyimpan struktur data yang kompleks seperti tabel, matriks, graph, tree, dsb.