Leave a Reply
Enter your comment here...
Fill in your details below or click an icon to log in:
Email (required) (Address never made public)
Name (required)
Website
You are commenting using your WordPress.com account. ( Log Out / Change )
You are commenting using your Twitter account. ( Log Out / Change )
You are commenting using your Facebook account. ( Log Out / Change )
Cancel
Connecting to %s
Notify me of new comments via email.
Notify me of new posts via email.
Δ
Nurul Huda 23 May 2021
- Beranda ›
- Python ›
- Python Dasar
- › Python Dasar: Perbedaan List, Tuple, dan Set 🐍
- Python
- Python Dasar
- Tipe Data
Daftar Isi
- Perbedaan Secara Pengertian
- Perbedaan Sintaks Pembuatan
- Perbedaan Cara Mengakses Nilai
- Perbedaan Slicing Data
- Perbedaan Ubah Data
- Perbedaan Tambah Data
- Perbedaan Hapus Data
- Perbedaan Operator Keanggotaan
- Perbedaan Ketika Dilakukan Perulangan
- Kesimpulan
- Pertemuan Selanjutnya
Pada seri belajar python dasar ini kita telah membahas berbagai macam tipe data pada python, termasuk tipe data kolektif seperti list, tuple, set, dan dictionary.
Agar lebih paham lagi tentang berbagai macam tipe data kolektif di atas, pada kesempatan kali ini kita akan membahas tentang perbedaan-perbedaan antar tipe data list, set, dan tuple pada python.
Perbedaan Secara Pengertian
Kita mulai dulu dari segi pengertian.
Secara umum, semua tipe data di atas merupakan tipe data kolektif. Artinya: ia bisa menyimpan lebih dari satu nilai dalam satu variabel sekaligus.
Bedanya:
- List adalah tipe data kolektif yang bersifat mutable dan ordered, alias bisa diedit-edit dan bisa diakses via indeks.
- Tuple adalah tipe data kolektif yang bersifat immutable dan ordered. Dalam artian ia sama dengan list, hanya saja tuple tidak bisa diedit-edit.
- Sedangkan Set adalah tipe data kolektif yang bersifat unique, unordered, dan unchangeable di mana semua nilainya harus unik, dan ia tidak bisa diakses via indeks (karena tidak berurut), dan dia tidak bisa diedit-edit (akan tetapi bisa ditambah dan dihapus).
Perhatikan tabel berikut untuk lebih jelasnya:
Ordered (Bisa diakses via indeks) | ✅ | ✅ | ❌ |
Mutable (Bisa diubah via indeks) | ✅ | ❌ | ❌ |
Changeable (Bisa ditambah anggota baru atau dihapus) | ✅ | ❌ | ✅ |
Unique (Semua anggota harus unik) | ❌ | ❌ | ✅ |
Perbedaan Sintaks Pembuatan
Masing-masing tipe data list, tuple, dan set memiliki sintaks pembuatan tersendiri. Di mana list menggunakan kurung siku ([]), tuple menggunakan kurung biasa (()) atau bisa juga tanpa kurung, dan set menggunakan tanda kurung kurawal ({}).
Perhatikan tabel berikut untuk lebih jelasnya:
list | [] | a = [1, 2, 3] |
tuple | () | a = (1, 2, 3) atau a = 1, 2, 3 |
set | {} | a = {1, 2, 3} |
Perbedaan Cara Mengakses Nilai
Tipe data yang memiliki sifat “ordered” alias terurut (list dan tuple), cara mengakses nilainya bisa menggunakan indeks. Sedangkan variabel yang bersifat “unordered” alias tidak terurut seperti set, ia tidak bisa diakses secara eksplisit.
Contoh list dan tuple:
list_a = [1, 2, 3] print(list_a[0]) print(list_a[1]) print(list_a[2]) tuple_a = 10, 20, 30 print(tuple_a[0]) print(tuple_a[1]) print(tuple_a[2])
Output:
Contoh set:
set_b = { 15, 16, 17 } print(set_b[0]) print(set_b[1]) print(set_b[2])
Error:
Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'set' object is not subscriptable
Perbedaan Slicing Data
Untuk list dan tuple, tidak ada perbedaan dalam hal slicing data –karena keduanya bersifat ordered.
Ada pun set, ia tidak mendukung fitur slicing data.
>>> list_a = [1, 2, 3, 4] >>> tuple_a = tuple(list_a) >>> >>> list_a[2:4] [3, 4] >>> tuple_a[2:] (3, 4) >>>
Perbedaan Ubah Data
Untuk ubah data ada dua tipe:
- ubah data pada indeks tertentu (yang sudah dimasukkan sebelumnya)
- ubah data dalam artian menambahkan data baru atau menghapus data yang sudah ada
Dalam dua tipe di atas, hanya tipe data list saja yang bisa melakukan semuanya.
Sedangkan set hanya bisa mengedit data untuk tipe yang kedua.
Ada pun tuple, maka ia tidak bisa melakukan edit data sama sekali, baik tipe yang pertama mau pun tipe yang kedua.
list_a = [1, 2, 3] print(f'Sebelum: {list_a}') # edit data yang paling tengah list_a[1] = 99 print(f'Sesudah: {list_a}')
Output:
Sebelum: [1, 2, 3] Sesudah: [1, 99, 3]
Perbedaan Tambah Data
Untuk mengedit data yang dalam artian “menambah data”, maka hanya ada dua tipe data yang bisa melakukannya; yaitu list dan set. Ada pun tuple tidak bisa melakukannya.
Kita bisa menambahkan nilai baru kepada suatu list dengan memanggil fungsi list.append(), dan kita bisa melakukan hal yang sama dengan set menggunakan fungsi set.add().
Perhatikan contoh berikut:
list_a = [1] set_a = {1, 39} print('[Sebelum]') print(f' list\t: {list_a}') print(f' set\t: {set_a}') list_a.append(10) list_a.append(50) set_a.add(50) set_a.add(100) print('[Sesudah]') print(f' list\t: {list_a}') print(f' set\t: {set_a}')
Output:
[Sebelum] list : [1] set : {1, 39} [Sesudah] list : [1, 10, 50] set : {1, 50, 100, 39}
Perbedaan Hapus Data
Sama seperti sebelumnya, hanya tipe data list dan set saja yang bisa melakukan hapus data.
Keduanya sama-sama menggunakan fungsi .remove().
Perhatikan contoh berikut:
list_a = [1, 2, 3, 4] set_a = {1, 2, 3, 4} print('[Sebelum]') print(f' list\t: {list_a}') print(f' set\t: {set_a}') list_a.remove(2) list_a.remove(4) set_a.remove(2) set_a.remove(4) print('[Sesudah]') print(f' list\t: {list_a}') print(f' set\t: {set_a}')
Output:
[Sebelum] list : [1, 2, 3, 4] set : {1, 2, 3, 4} [Sesudah] list : [1, 3] set : {1, 3}
Perbedaan Operator Keanggotaan
Berikutnya adalah penggunaan operator keanggotaan in atau pun not in.
Dua operator ini bisa kita gunakan baik pada list, tuple, dan set.
Perhatikan contoh berikut:
>>> list_a = [1, 2, 3] >>> tuple_a = 1, 2, 3 >>> set_a = {1, 2, 3} >>> >>> 1 in list_a True >>> 2 not in tuple_a False >>> 3 in set_a True >>>
Perbedaan Ketika Dilakukan Perulangan
Yang terakhir tapi bukan yang paling akhir, kita bisa melakukan perulangan for untuk ketiga tipe data tersebut.
Akan tetapi perlu diperhatikan bahwa tipe data set bertipe unordered, artinya bahwa data yang kita definisikan bisa jadi urutannya berbeda dengan data yang disimpan oleh sistem.
Perhatikan contoh berikut:
list_a = [3, 10, 1] tuple_a = 3, 10, 1 set_a = {3, 10, 1} print('[LIST]') for item in list_a: print(item) print('\n[TUPLE]') for item in tuple_a: print(item) print('\n[SET]') for item in set_a: print(item)
Output:
[LIST] 3 10 1 [TUPLE] 3 10 1 [SET] 1 10 3
Kesimpulan
Tiga (dari 4) tipe data kolektif pada python –yaitu list, set dan tuple– memiliki berbagai macam kesamaan dan juga berbagai macam perbedaan.
Masing-masing sifat pada tiap tipe data tersebut memberikan kita keleluasaan untuk memilih mana tipe data yang pas untuk suatu kasus, dan mana tipe data yang cocok untuk suatu kasus yang lain.
Pertemuan Selanjutnya
Oke karena ini adalah pertemuan terakhir dari seri belajar python dasar untuk pemula, pada pada pertemuan selanjutnya kita akan memulai seri baru belajar python untuk tingkat menengah.
Jadi, pastikan kalian tetap semangat dan tetap stay tune, ya! 😎
Terima kasih banyak.
Lanjut: Seri Tutorial Python Tingkat Menengah.
Mengangkangi Python: Level 1
Ikuti Kursus Cara Paling Cepat Menguasai Bahasa Python.