Belajar Python Dasar #4: Bagaimana Menggunakan List (Bagian-1)
Pada beberapa tulisan di seri Tutorial Pemrograman Python, subrutin telah mengulas tipe – tipe data Python yaitu boolean
, integer
, float
dan string
. Di dalam Python, string
sebenarnya merupakan bentuk dari struktur data sekuensial dari tipe data character
. PadaJava, struktur data sekuensial direpresentasikan oleh Array, dan Vector. Sedangkan di dalam Python direpresentasikan oleh list
dan tupple
Apa perbedaan antara list
dan tupple
? Yang paling mendasar tupple
bersifat immutable, artinya begitu ketika sebuah object tupple
dibentuk dan diisi dengan elemen, maka object tersebut tidak dapat diubah lagi. Sementara itu, list
bersifat mutable yang berarti, programmer dapat dengan bebas menambah atau mengurangi elemen di dalam list
tersebut. Di dalam Pythonlist
berguna untuk untuk menyimpan data berdasarkan urutan indeks.
- Inisiasi List
Untuk membuat sebuah list kosong, programmer cukup menggunakan sintaks kurung siku []
atau menggunakan sintaks list()
>>> empty_list=[] >>> empty_list [] >>> another_empty_list=list() >>> another_empty_list []
Jika ingin menginisiasi sebuah list
dengan elemen didalamnya, programmer dapat menambahkan elemen – elemen di dalam kurung siku tersebut dengan menggunakan tanda koma sebagai pemisah antar elemen
>>> weekdays = ['Monday','Tuesday','Wednesday', 'Thursday', 'Friday'] >>> weekdays ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']
- Mengubah String menjadi
list
Misalnya, terdapat sebuah data berformat string
, programmer dapat mengubahnya menjadi list
menggunakan sintaks list('contohstring')
>>> list('cat') ['c', 'a', 't']
dengan menggunakan fungsi split
, programmer dapat mengubah string
menjadi list
berdasarkan karakter separator yang diinginkan
>>> birthday = '20/02/1988' >>> birthday '20/02/1988' >>> birthday.split('/') ['20', '02', '1988']
- Mendapatkan elemen Di dalam
list
Untuk mendapat elemen di dalam list
, programmer dapat menggunakan sintaks kurung siku pada list
dengan indeks elemen di dalamnya
>>> my_name=['Tedy','Tri','Saputro'] >>> my_name ['Tedy', 'Tri', 'Saputro'] >>> my_name[1] 'Tri' >>> my_name[0] 'Tedy'
Sebagaimana yang pernah diulas pada Belajar Python Dasar #3: Bermain – main dengan String, programmer dapat menggunakan indeks negatif yang berarti item yang diambil dimulai dari yang paling akhir
>>> my_name[-1] 'Saputro'
- Replace elemen di dalam
list
Object list
dapat diisi elemen – elemen yang memiliki tipe data yang berbeda satu dengan yang lain
>>> city_car = ['brio','yaris','jazz','baleno'] >>> mpv_car=['xenia','mobilio','ertiga'] >>> lcgc_car=['calya','agya',1,2] >>> all_car=[city_car,mpv_car,lcgc_car,'tesla'] >>> all_car [['brio', 'yaris', 'jazz', 'baleno'], ['xenia', 'mobilio', 'ertiga'], ['calya', 'agya', 1, 2], 'tesla']
Jika programmer ingin mengubah elemen di dalam list, dapat digunakan indeks offset di dalam kurung siku seperti berikut
>>> my_name[1]='ganteng' >>> my_name ['Tedy', 'ganteng', 'Saputro']
- Slice
Sebagaimana pada string
, data pada list
dapat diekstrak (mengambil substring) dengan menggunakan operator slice menggunakan tanda kurung siku, dengan ketentuan argumen sebagai berikut
[:]
akan mengekstrak seluruh sekuensi string dari awal sampai akhir[start:]
akan mengekstrak sekuensi string mulai pada indexstart
hingga akhir[start:end]
akan mengekstrak sekuensi string mulai pada indexstart
hingga indexend
dikurangi 1[start:end:step]
mengekstrak sekuensi string mulai pada indexstart
hingga indexend
dikurangi 1, dengan melewati karakter sejumlahstep
Misalnya variabel weekdays
yang telah diinisiasi pada langkah sebelumnya, dapat diekstrak dari elemen dengan indeks 0 hingga indeks 1, dengan cara menuliskan statement weekdays[0:2]
, (angka end
2 berasal dari indeks akhir yang ingin diambil, yaitu 1 + 1)
>>> weekdays[0:2] ['Monday', 'Tuesday']
Step dapat digunakan, untuk memberikan jarak tiap elemen yang diekstrak (aturan nomer 4)
>>> weekdays[::2] ['Monday', 'Wednesday', 'Friday']
perhatikan pada statement tersebut digunakan step 2, yang berarti, elemen yang diekstrak adalah
- elemen indeks 0 (
Monday
), - elemen dengan indeks 2 (
Wednesday
, step dari indeks 0 + 2 = 2), - elemen dengan indeks 4 (
Friday
, step dari indeks 2 + 2 = 4)
Nilai step dapat juga bernilai negatif, yang berarti indeks yang diambil akan dimulai dari indeks paling akhir, sehingga hasil yang ditampilkan akan terbalik dengan hasil sebelumnya
>>> weekdays[::-2] ['Friday', 'Wednesday', 'Monday']
- Menambahkan elemen (pada indeks paling akhir + 1)
Ada banyak cara yang dapat digunakan untuk menambahkan elemen kedalam list
digunakan fungsi append
seperti berikut
>>> alphabet=['a','b','c','d'] >>> alphabet.append('e') >>> alphabet ['a', 'b', 'c', 'd', 'e']
- Menggabungkan list dengan
extend
Sedangkan untuk menggabungkan dua list
dapat digunakan fungsi extend
dalam contoh berikut, list
superhero
akan digabung dengan dc_hero
>>> superhero= ['Spiderman','Captain America','Hulk','Iron Man'] >>> dc_hero=['Superman','Batman','Flash'] >>> superhero.extend(dc_hero) >>> superhero ['Spiderman', 'Captain America', 'Hulk', 'Iron Man', 'Superman', 'Batman', 'Flash']
Alternatif selain fungsi extend adalah menggunakan operator +=
>>> superhero= ['Spiderman','Captain America','Hulk','Iron Man'] >>> dc_hero=['Superman','Batman','Flash'] >>> superhero+=dc_hero >>> superhero ['Spiderman', 'Captain America', 'Hulk', 'Iron Man', 'Superman', 'Batman', 'Flash']
Perhatikan bahwa penggunaan operator +=
begitu intuitif bagi programmer, karena operasi penggabungan list dapat dengan cara yang sama sebagaimana halnya operasi aritmatika