Pada pertemuan sebelumnya kita telah mempelajari tipe data dan variabel di python. Akan tetapi, kita hanya mempelajari dasar-dasarnya saja alias tipe data yang sederhana.
Mulai pada pertemuan ini, insyaallah kita akan mengambil beberapa pelajaran tentang tipe data koleksi (collection) pada python.
Apa maksud dari tipe data koleksi?
Ia adalah suatu jenis atau tipe data yang digunakan untuk menghimpun kumpulan data, atau data yang berjumlah lebih dari satu.
Secara umum, terdapat 4 tipe data koleksi pada python, yaitu:
Masing-masing dari 4 tipe data di atas memiliki sifat dan kegunaan sendiri-sendiri. Agar kita tahu kapan kita membutuhkan tipe data a dan kapan kita membutuhkan tipe data b, maka kita harus mempelajari semuanya dengan baik.
Dan pada pertemuan ini, kita akan coba terlebih dahulu berkenalan dengan tipe data List
pada python.
Tipe Data List
Tipe data list adalah tipe data koleksi yang bersifat ordered (terurut) dan juga bersifat changable (bisa diubah). Tipe data ini bisa kita definisikan dengan tanda kurung siku []
di dalam Python.
Kita bisa abaikan dulu pengertiannya karena pada tahap ini, praktik lebih penting untuk membentuk pemahaman yang lebih dalam terhadap suatu tipe data.
Bagaimana cara membuat list?
Langsung saja, seduh kopi anda, buka teks editor, lalu coba tuliskan kode program di bawah ini.
# list kosong
list_kosong = []
# list yang berisi kumpulan string
list_buah = ['Pisang', 'Nanas', 'Melon', 'Durian']
# list yang berisi kumpulan integer
list_nilai = [80, 70, 90, 60]
# list campuran berbagai tipe data
list_jawaban = [150, 33.33, 'Presiden Sukarno', False]
Kode program 1
Pada Kode program 1, kita lihat bahwa sebuah list didefinisikan menggunakan tanda kurung siku ([]
).
Kita juga saksikan bahwa list pada python, bisa berisi berbagaimacam tipe data. Bisa terdiri dari tipe data yang sejenis mau pun dari tipe data yang berbeda-beda.
Menampilkan List
Kita bisa menggunakan perintah print()
untuk melihat isi dari sebuah list, baik secara menyeluruh maupun sebagian.
Pada Kode program 1 di atas, tambahkan kode program berikut ini untuk menampilkan semua isi dari list:
print('list_kosong:', list_kosong)
print('list_buah:', list_buah)
print('list_nilai:', list_nilai)
print('list_jawaban:', list_jawaban)
Jika dijalankan, kita akan mendapatkan output sebagai berikut:
list_kosong: []
list_buah: ['Pisang', 'Nanas', 'Melon', 'Durian']
list_nilai: [80, 70, 90, 60]
list_jawaban: [150, 33.33, 'Presiden Sukarno', False]
Kita juga bisa menampilkan isi tertentu dari list dengan menggunakan indeks. Setiap data pada list memiliki indeks sebagai alamat. Dan indeks adalah sebuah nilai integer dimulai dari 0 yang menjadi acuan di mana sebuah data disimpan di dalam list.
Tambahkan kode program berikut:
print(list_buah[0])
print(list_buah[2])
print(list_buah[1])
print(list_buah[3])
Output:
Pisang
Melon
Nanas
Durian
Kita juga bisa menggunakan indeks negatif untuk menampilkan data dari belakang. Perhatikan contoh berikut:
print(list_buah[-1])
print(list_buah[-2])
print(list_buah[-3])
print(list_buah[-4])
Output:
Durian
Melon
Nanas
Pisang
NB: yang perlu diperhatikan adalah: bahwa indeks negatif tidak dimulai dari 0, akan tetapi dimulai dari angka 1.
Slicing List
Slicing list adalah teknik untuk memotong nilai pada list. Maksudnya adalah: kita mengambil beberapa nilai dari anggota list dengan mendefinisikan indeks kiri dan indeks kanan.
Perhatikan contoh kode program berikut:
list_buah = ['Pisang', 'Nanas', 'Melon', 'Durian']
print(list_buah[0:1])
print(list_buah[0:2])
print(list_buah[1:3])
print(list_buah[0:-1])
print(list_buah[-1:-3])
print(list_buah[-1:3])
print(list_buah[-3:-1])
Jika kita eksekusi, program di atas akan menghasilkan output:
['Pisang']
['Pisang', 'Nanas']
['Nanas', 'Melon']
['Pisang', 'Nanas', 'Melon']
[]
[]
['Nanas', 'Melon']
Keterangan
- parameter indeks sebelah kiri mendefinisikan awal indeks dari nilai yang akan ditampilkan.
- parameter indeks sebelah kanan mendefinisikan batas yang harus ditampilkan.
Slicing tanpa batas
Kita juga bisa melakukan slicing data tanpa mendefinisikan indeks batas. Coba perhatikan contoh berikut:
list_buah = ['Pisang', 'Nanas', 'Melon', 'Durian']
print(list_buah[0:])
print(list_buah[1:])
print(list_buah[2:])
print(list_buah[3:])
print(list_buah[:0])
print(list_buah[:1])
print(list_buah[:2])
print(list_buah[:3])
print(list_buah[:4])
Kode program di atas akan menampilkan output sebagai berikut:
['Pisang', 'Nanas', 'Melon', 'Durian']
['Nanas', 'Melon', 'Durian']
['Melon', 'Durian']
['Durian']
[]
['Pisang']
['Pisang', 'Nanas']
['Pisang', 'Nanas', 'Melon']
['Pisang', 'Nanas', 'Melon', 'Durian']
Mengubah data di dalam list
Pada awal pembahasan, dikatakan bahwa list adalah tipe data yang bersifat changable alias bisa diubah.
Bagaimana cara mengubah data di dalam list?
Caranya mudah, seperti mengubah nilai variabel pada umumnya. Perhatikan contoh berikut:
list_buah = ['Pisang', 'Nanas', 'Melon', 'Durian']
print(list_buah)
# ubah data pertama
list_buah[0] = 'Jeruk'
print(list_buah)
# ubah data terakhir
list_buah[-1] = 'Mangga'
print(list_buah)
Output:
['Pisang', 'Nanas', 'Melon', 'Durian']
['Jeruk', 'Nanas', 'Melon', 'Durian']
['Jeruk', 'Nanas', 'Melon', 'Mangga']
Kita juga bisa mengubah data dalam range
Di dalam python, kita juga bisa mengubah data dalam range tertentu secara sekaligus. Caranya tidak jauh berbeda dengan apa yang telah kita pelajari pada poin slicing data list.
Pada kode program di atas, tambahkan lagi kode program berikut:
# ubah data dalam range
list_buah[1:3] = ['Naga', 'Pepaya']
print(list_buah)
Maka kita akan mendapati bahwa nilai Nanas
dan Melon
akan berubah menjadi Naga
dan Pepaya
.
Output:
['Jeruk', 'Naga', 'Pepaya', 'Mangga']
Menambah item ke dalam list
Setelah kita mengubah data pada list, sekarang kita akan mencoba untuk menambahkan sebuah data baru ke dalam list.
Menambah data di belakang
Yang pertama, kita bisa menggunakan fungsi append()
. Fungsi ini menerima satu parameter, yang mana parameter tersebut akan dimasukkan sebagai nilai baru pada list, dan nilai baru tersebut berada pada akhir item.
list_buah = ['Jeruk', 'Naga', 'Pepaya', 'Mangga']
print(list_buah)
# tambah data di belakang list
list_buah.append('Sirsak')
print(list_buah)
Menambah data di depan
Selain fungsi append()
, kita juga bisa menambahkan item ke dalam list dengan menggunakan fungsi insert()
. Fungsi insert ini menerima dua buah parameter:
- Parameter pertama untuk mendefinisikan posisi indeks dari data yang akan dimasukkan
- Parameter kedua untuk mendefinisikan nilai yang akan dimasukkan ke dalam list
Berikut ini contoh untuk memasukkan nilai Jambu
ke dalam list_buah
pada indeks 0
.
# tambah data di awal list
list_buah.insert(0, 'Jambu')
print(list_buah)
Menambah data di mana pun
Tidak hanya terbatas indeks 0
, kita juga bisa memasukkan nilai pada indeks berapa pun pada list.
# tambah data di index mana pun dalam list
list_buah.insert(2, 'Manggis')
print(list_buah)
Jika 3 potongan kode program di atas dijalankan, maka kita akan mendapatkan output seperti berikut:
['Jeruk', 'Naga', 'Pepaya', 'Mangga']
['Jeruk', 'Naga', 'Pepaya', 'Mangga', 'Sirsak']
['Jambu', 'Jeruk', 'Naga', 'Pepaya', 'Mangga', 'Sirsak']
['Jambu', 'Jeruk', 'Manggis', 'Naga', 'Pepaya', 'Mangga', 'Sirsak']
Menghapus item dari list
Untuk menghapus item dari list, kita bisa menggunakan dua buah fungsi; fungsi pop()
dan fungsi remove()
, kita juga bisa menggunakan statement del
.
Menghapus item dengan fungsi pop()
Fungsi pop()
akan mengambil item terakhir dari sebuah list, lalu menghapusnya. Karena ia juga “mengambil”, maka kita bisa menyimpan hasil kembalian dari fungsi pop()
ke dalam sebuah variabel.
Perhatikan contoh berikut:
list_angka = [1, 2, 3, 4, 5]
print(list_angka)
# hapus satu angka di belakang
angka_yang_terhapus = list_angka.pop()
print('angka yang terhapus:', angka_yang_terhapus)
print(list_angka)
Output:
[1, 2, 3, 4, 5]
angka yang terhapus: 5
[1, 2, 3, 4]
Menghapus dengan fungsi remove()
Selanjutnya adalah fungsi remove()
. Fungsi ini akan menghapus data yang memiliki nilai yang sama dengan parameter yang dimasukkan. Perhatikan contoh berikut:
list_buah = ['Mangga', 'Jambu', 'Jeruk', 'Jambu']
print(list_buah)
# hapus item pertama dengan nilai 'Jambu'
list_buah.remove('Jambu')
print(list_buah)
Output:
['Mangga', 'Jambu', 'Jeruk', 'Jambu']
['Mangga', 'Jeruk', 'Jambu']
Menghapus dengan statement del
Selanjutnya, kita juga bisa menghapus item pada list dengan menggunakan statement del
. Dengan statement ini, kita bisa menghapus indeks berapa pun dari item list.
Perhatikan contoh berikut:
print('\n' * 2)
list_buah = ['Mangga', 'Jambu', 'Jeruk', 'Jambu']
print(list_buah)
del list_buah[1]
print(list_buah)
del list_buah[0:2]
print(list_buah)
Output:
['Mangga', 'Jambu', 'Jeruk', 'Jambu']
['Mangga', 'Jeruk', 'Jambu']
['Jambu']
Menggabungkan dua buah list atau lebih
Berikutnya hal umum yang biasa kita lakukan dengan list adalah: menggabungkan dua buah list (atau lebih) menjadi satu kesatuan.
Bisa jadi kita memiliki 3 list berikut:
a = [1, 2, 3]
b = ['a']
c = [True, 'b', False]
Kita bisa dengan mudah menggabungkan ketiganya menggunakan operator +
.
listBaru = a + b + c
print(listBaru)
Program di atas akan menghasilkan output:
[1, 2, 3, 'a', True, 'b', False]
Mengurutkan data
Terakhir tapi bukan yang paling akhir, kita bisa mengurutkan data list pada python dengan memanggil fungsi <list>.sort()
.
Perhatikan contoh berikut:
list_buah = ['Mangga', 'Jeruk', 'Zaitun', 'Apel', 'Durian']
print(list_buah)
# urutkan secara ascending
list_buah.sort()
print(list_buah)
# membalikkan posisi item list (tidak harus berurut)
list_buah.reverse()
print(list_buah)
Output:
['Mangga', 'Jeruk', 'Zaitun', 'Apel', 'Durian']
['Apel', 'Durian', 'Jeruk', 'Mangga', 'Zaitun']
['Zaitun', 'Mangga', 'Jeruk', 'Durian', 'Apel']
Fungsi-fungsi bawaan list
Masih ada banyak sekali fungsi-fungsi list pada python yang belum kita bahas.
Secara umum, berikut ini di antara fungsi-fungsi list yang bisa kita manfaatkan untuk menyelesaikan berbagai macam permasalahan.
Nama | Keterangan |
---|---|
append() |
Menambahkan elemen baru pada list |
clear() |
Menghapus semua item pada list |
copy() |
Mengembalikan hasil duplikat dari list |
count() |
Mengembalikan jumlah item pada list sesuai yang didefinisikan |
index() |
Mengembalikan indeks pertama dari item yang sudah didefinisikan |
insert() |
Menambahakn item baru pada list pada posisi tertentu |
pop() |
Menghapus item terakhir pada list, atau juga bisa menghapus item pada posisi yang didefinisikan |
remove() |
Hapus item pada list sesuai dengan nilai yang didefinisikan |
reverse() |
Membalikkan posisi tiap item pada list |
sort() |
Mengurutkan list |
Selanjutnya
Setelah tulisan yang cukup panjang tentang list. Pada pertemuan yang akan datang insyaallah kita akan membahas tipe data koleksi selanjutnya yaitu: Tuple! π₯³
Nantikan terus ya tulisan-tulisan di Jago Ngoding, jangan lupa comment, share, dan like fanspage kami! ππ
Terima kasih banyak!