Daftar vs Tuple: Perbedaan Antara Daftar dan Tuple

Diterbitkan: 2021-01-08

Dalam Python, daftar dan tuple adalah kelas struktur data yang dapat menyimpan satu atau lebih objek atau nilai. Daftar digunakan untuk menyimpan beberapa item dalam satu variabel dan dapat dibuat menggunakan tanda kurung siku. Demikian pula, tupel juga dapat menyimpan banyak item dalam satu variabel dan dapat dideklarasikan menggunakan tanda kurung.

Meskipun ada banyak perbedaan antara daftar dan tupel, ada beberapa kesamaan juga, sebagai berikut:

  • Kedua struktur data tersebut merupakan tipe data urutan yang menyimpan koleksi item.
  • Item dari tipe data apa pun dapat disimpan di dalamnya.
  • Item dapat diakses dengan indeks mereka.

Daftar isi

Daftar vs Tuple

Tabel di bawah ini mencakup perbedaan mendasar antara list dan tuple dengan Python.

Daftar Tupel
Itu bisa berubah Itu tidak berubah
Implikasi dari iterasi memakan waktu dalam daftar. Implikasi dari iterasi jauh lebih cepat dalam tupel.
Operasi seperti penyisipan dan penghapusan lebih baik dilakukan. Elemen dapat diakses dengan lebih baik.
Mengkonsumsi lebih banyak memori. Mengkonsumsi lebih sedikit memori.
Banyak metode built-in yang tersedia. Tidak memiliki banyak metode bawaan.
Kesalahan dan perubahan yang tidak terduga dapat dengan mudah terjadi dalam daftar.

Kesalahan dan perubahan yang tidak terduga jarang terjadi pada tupel.

Bagian berikut memberikan versi rinci dari daftar vs tuple untuk pemahaman yang lebih baik.

Perbedaan sintaks

Seperti disebutkan dalam pendahuluan, sintaks untuk daftar dan tupel berbeda. Sebagai contoh:

list_num = [10, 20, 30, 40]

tup_num = (10, 20, 30, 40)

Mutabilitas

Salah satu perbedaan terpenting antara daftar dan tupel adalah bahwa daftar dapat diubah, sedangkan tupel tidak dapat diubah. Ini berarti bahwa daftar dapat diubah, dan tupel tidak dapat diubah.

Jadi, beberapa operasi dapat bekerja pada daftar, tetapi tidak pada tupel. Misalnya, dalam ilmu data, jika daftar sudah ada, elemen tertentu dari daftar tersebut dapat dipindahkan. Bersamaan dengan ini, seluruh daftar dapat dipindahkan. Elemen dan irisan elemen dapat dihapus dari daftar.

Di sisi lain, elemen tertentu pada tuple tidak dapat dipindahkan atau dihapus, tetapi dimungkinkan untuk mengirisnya, dan bahkan menetapkan kembali dan menghapus seluruh tuple. Karena tupel tidak dapat diubah, mereka tidak dapat disalin.

Lihat: Python vs Java

Operasi

Meskipun ada banyak operasi yang mirip dengan daftar dan tupel, daftar memiliki fungsionalitas tambahan yang tidak tersedia dengan tupel. Ini adalah operasi penyisipan dan pop, dan pengurutan dan penghapusan elemen dalam daftar.

Fungsi

Beberapa fungsi Python dapat diterapkan pada kedua struktur data, seperti len, max, min, any, sum, all, dan sort.

Ukuran

Dalam Python, tupel dialokasikan blok memori yang besar dengan overhead yang lebih rendah, karena tupel tidak dapat diubah; sedangkan untuk daftar, blok memori kecil dialokasikan. Di antara keduanya, tupel memiliki memori yang lebih kecil. Ini membantu dalam membuat tupel lebih cepat daripada daftar ketika ada sejumlah besar elemen.

Jenis elemen

Elemen milik tipe data yang berbeda, yaitu elemen heterogen, biasanya disimpan dalam tupel. Sementara elemen homogen, elemen dari tipe data yang sama, biasanya disimpan dalam daftar. Tapi ini bukan batasan untuk struktur data. Elemen tipe data yang serupa dapat disimpan dalam tupel, dan elemen tipe data yang berbeda juga dapat disimpan dalam daftar.

Panjang

Panjang berbeda dalam dua struktur data. Tuple memiliki panjang tetap, sedangkan daftar memiliki panjang variabel. Dengan demikian, ukuran daftar yang dibuat dapat diubah, tetapi tidak demikian halnya dengan tupel.

Men-debug

Ketika datang ke debugging, dalam daftar vs tupel, tupel lebih mudah untuk debug untuk proyek-proyek besar karena kekekalannya. Jadi, jika ada proyek yang lebih kecil atau jumlah data yang lebih sedikit, lebih baik menggunakan daftar. Ini karena daftar bisa diubah, sementara tupel tidak bisa, membuat tupel lebih mudah dilacak.

Daftar bersarang dan tupel

Tuple dapat disimpan dalam daftar, dan juga, daftar dapat disimpan di dalam tupel. Dalam tupel bersarang, sebuah tupel dapat menampung lebih banyak tupel. Dan dalam daftar bersarang, sebuah daftar dapat menampung lebih banyak daftar.

menggunakan

Penting untuk dipahami bahwa ada kasus yang berbeda di mana lebih baik menggunakan salah satu dari struktur data ini, seperti; menggunakan salah satu tergantung pada programmer, yaitu memilih salah satu berdasarkan apakah mereka ingin mengubah data nanti atau tidak.

Tuple dapat digunakan sebagai setara dengan kamus tanpa kunci untuk menyimpan data. Ketika tupel disimpan dalam daftar, lebih mudah untuk membaca data.

Baca: Lebih banyak jenis struktur data di Python

Kesimpulan

Artikel ini membantu dalam memahami perbedaan antara daftar dan tupel. Meskipun kedua tipe tersebut adalah struktur data dalam Python, penting untuk mengetahui perbedaan ini saat membuat pilihan. Perbedaan yang paling penting untuk diingat adalah bahwa daftar bisa berubah, dan tupel tidak, daftar memiliki ukuran variabel dan tupel memiliki ukuran tetap. Terakhir, operasi dalam tupel dapat dieksekusi lebih cepat.

Jika Anda membaca artikel ini, kemungkinan besar Anda memiliki ambisi untuk menjadi pengembang Python. Jika Anda tertarik untuk belajar python & ingin mempelajari berbagai alat dan perpustakaan, lihat Program PG Eksekutif IIIT-B & upGrad dalam Ilmu Data.

Kapan daftar Python lebih disukai untuk menyimpan data?

Daftar Python dianggap sebagai struktur data terbaik untuk menyimpan data dalam skenario berikut: Daftar dapat digunakan untuk menyimpan berbagai nilai dengan tipe data yang berbeda dan dapat diakses hanya dengan indeks masing-masing. Saat Anda perlu melakukan operasi matematika pada elemen, daftar dapat digunakan karena memungkinkan Anda untuk mengoperasikan elemen secara matematis secara langsung. Karena daftar dapat diubah ukurannya, daftar dapat digunakan untuk menyimpan data saat Anda tidak yakin tentang jumlah elemen yang akan disimpan.

Nyatakan berbagai operasi dari Nametuple.

Nametuple dalam Python melakukan berbagai operasi. Berikut ini adalah daftar beberapa operasi paling umum yang dilakukan oleh NameTuple - Access by index, Access by key name, make(), _asadict(), using “**” (double star) operator, _fileds(), _replace (), dll.

Apa saja cara berbeda untuk membuat daftar?

Daftar Python dapat dibuat dengan berbagai cara yang disebutkan di sini. Menggunakan perulangan for - Perulangan for adalah cara paling mendasar untuk membuat daftar. Daftar dapat dibuat menggunakan perulangan for dalam tiga cara sederhana - Buat daftar kosong, Ulangi semua elemen yang akan disisipkan, Tambahkan setiap elemen dalam daftar menggunakan fungsi append(). Menggunakan map(): Fungsi map() dalam Python dapat digunakan sebagai alternatif untuk membuat daftar. Fungsi ini menerima dua parameter - Fungsi: Fungsi yang dilewati peta untuk setiap iterable dan Iterable: Elemen atau iterable yang akan dipetakan. Menggunakan pemahaman Daftar: Metode ini adalah yang paling optimal dari ketiga metode. Sementara dalam metode di atas daftar kosong harus dibuat terlebih dahulu, pemahaman daftar memungkinkan Anda untuk memasukkan semua elemen dalam daftar menggunakan satu baris.