Jenis Struktur Data di Python: Daftar, Tuple, Set & Kamus

Diterbitkan: 2020-12-30

Python adalah bahasa favorit sepanjang masa untuk semua penggemar Ilmu Data. Sifat serbaguna dan pendekatan yang mudah dipahami membantu pengembang untuk lebih fokus pada pemahaman tren dalam data dan memperoleh wawasan yang bermakna daripada menghabiskan waktu untuk memperbaiki bug titik koma kecil atau menutup braket overhead. Python menjadi bahasa paling populer di kalangan pemula yang diadaptasi dengan cepat, jadi penting untuk menguasai bahasa ini dengan baik.

Struktur Data adalah konsep penting dalam bahasa pemrograman apa pun. Ini mendefinisikan bagaimana variabel dan data dapat disimpan dan diambil dari memori dengan cara terbaik, tergantung pada tipe data. Ini juga mendefinisikan hubungan antara variabel, yang membantu dalam memutuskan operasi dan fungsi yang harus dilakukan di atasnya. Mari kita pahami bagaimana Python mengelola data.

Daftar isi

Jenis Struktur Data dengan Python

1. Daftar

Ini adalah Struktur Data yang paling sederhana dan umum digunakan dalam pemrograman Python. Seperti namanya, itu adalah kumpulan barang yang akan disimpan. Item yang disimpan dapat berupa semua jenis numerik, string, boolean, objek, dll yang membuatnya heterogen. Ini berarti bahwa daftar dapat memiliki semua jenis data dan kami dapat mengulangi daftar ini menggunakan jenis loop apa pun.

Elemen yang disimpan biasanya diasosiasikan dengan indeks yang mendefinisikan posisi dalam daftar. Penomoran indeks dimulai dari nol. Daftar ini bisa berubah, artinya elemen dalam daftar dapat ditambahkan, dihapus, atau diubah bahkan setelah definisinya. Struktur data ini seperti array dalam bahasa lain yang biasanya homogen, artinya hanya satu jenis data yang dapat disimpan dalam array. Beberapa operasi dasar pada Daftar adalah sebagai berikut:

  • Untuk mendeklarasikan daftar dengan Python, letakkan di dalam tanda kurung siku:

sample_list = ['upGrad', '1', 2]

  • Untuk menginisialisasi daftar kosong:

contoh_daftar = daftar()

  • Tambahkan elemen ke daftar:

sample_list.append('elemen_baru')

  • Hapus elemen dari daftar:

sample_list.remove(<nama elemen>) menghapus elemen tertentu

del sample_list[<element index num>] menghapus elemen pada indeks itu

sample_list.pop(<element index num>) menghapus elemen indeks itu dan mengembalikan elemen yang dihapus itu

  • Untuk mengubah elemen pada indeks apa pun:

sample_list[<any index>] = item baru

  • Slicing : Ini adalah fitur penting yang dapat menyaring item dalam daftar dalam kasus tertentu. Pertimbangkan bahwa Anda hanya memerlukan rentang nilai tertentu dari daftar, maka Anda dapat melakukannya dengan:

sample_list[start: stop: step] di mana step mendefinisikan jarak antara elemen dan secara default adalah 1.

Pelajari tentang: Cara Membuat Pohon Keputusan Sempurna

2. Tupel

Ini adalah struktur data lain yang menyimpan data secara berurutan, artinya data yang ditambahkan tetap dalam urutan yang teratur seperti daftar. Mengikuti baris yang sama, Tuple juga dapat menyimpan data heterogen, dan pengindeksan tetap sama.

Perbedaan utama antara keduanya adalah bahwa elemen yang disimpan dalam Tuple tidak dapat diubah dan tidak dapat diubah setelah definisi. Ini berarti Anda tidak dapat menambahkan elemen baru, mengubah item yang sudah ada, atau menghapus elemen dari tuple. Elemen hanya dapat dibaca darinya melalui pengindeksan atau pembongkaran tanpa penggantian.

Ini membuat Tuple lebih cepat dibandingkan dengan daftar dalam hal pembuatan. Tuple disimpan dalam satu blok memori tetapi daftar membutuhkan dua blok, satu berukuran tetap dan yang lainnya berukuran variabel untuk menyimpan data. Seseorang harus lebih memilih Tuple daripada daftar ketika pengguna yakin bahwa elemen yang akan disimpan tidak memerlukan modifikasi lebih lanjut. Beberapa hal yang perlu dipertimbangkan saat menggunakan Tuple:

  • Untuk menginisialisasi tupel kosong:

sampel_tupel = tupel()

  • Untuk mendeklarasikan Tuple, lampirkan item dalam tanda kurung melingkar:

sample_tuple = ('upGrad', 'Python', 'ML', 23432)

  • Untuk mengakses elemen tuple:

sample_tuple[<index_num>]

3. Set

Dalam matematika, himpunan adalah kumpulan elemen unik yang didefinisikan dengan baik yang mungkin atau mungkin tidak terkait satu sama lain. Dalam tupel dan daftar, seseorang dapat menyimpan banyak elemen duplikat tanpa gagal, tetapi struktur data yang ditetapkan hanya mengambil item unik.

Elemen-elemen dari suatu himpunan disimpan dengan cara yang tidak teratur yang berarti item-item tersebut disimpan secara acak di dalam himpunan dan tidak ada posisi atau indeks yang didukung, pengirisan tidak diperbolehkan dalam suatu himpunan. Himpunan itu sendiri bisa berubah tetapi elemen-elemennya harus tidak berubah karena cara kerja set adalah hashing elemen-elemen ini dan dalam proses ini, hanya elemen yang tidak dapat diubah yang dapat di-hash.

Elemen dapat ditambahkan atau dihapus dari himpunan tetapi tidak dapat diubah karena tidak ada konsep pengindeksan dan oleh karena itu elemen dapat diubah. Seperti dalam matematika, di sini juga semua operasi himpunan dapat dilakukan seperti serikat pekerja, persimpangan, perbedaan, terputus-putus. Mari kita lihat bagaimana menerapkannya:

  • Untuk menginisialisasi set kosong:

sampel_set = set()

  • Tambahkan elemen ke set:

sample_set.add(item) Ini menambahkan satu item ke set

sample_set.update(items) Ini dapat menambahkan beberapa item melalui daftar, tuple, atau set lain

  • Hapus elemen dari set:

sample_set.discard(item) Menghapus elemen tanpa peringatan jika elemen tidak ada

sample_set.remove(item) Menimbulkan kesalahan jika elemen yang akan dihapus tidak ada.

  • Operasi set (Asumsikan dua set diinisialisasi: A dan B):

Sebuah | B atau A.union(B): Operasi serikat

A & B atau A.intersection(B): Operasi persimpangan

A – B atau A.difference(B): Selisih dua himpunan

A ^ B atau A.symmetric_difference(B) : Selisih simetris himpunan

Lihat: Bingkai Data dengan Python

4. Kamus

Ini adalah struktur data yang paling berguna dalam Python, yang memungkinkan elemen data disimpan dengan cara pasangan nilai kunci. Kuncinya harus berupa nilai yang tidak dapat diubah, dan nilainya dapat berupa item yang dapat diubah. Konsep ini seperti kamus yang sebenarnya, di mana kita memiliki kata-kata sebagai kunci dan artinya sebagai nilai. Kamus menyimpan pasangan ini dengan cara yang tidak berurutan, dan oleh karena itu tidak ada konsep indeks dalam struktur data ini. Beberapa hal penting terkait hal ini:

  • Untuk menginisialisasi kamus kosong:

sampel_dict = dict()

  • Untuk menambahkan elemen ke kamus:

sample_dict[kunci] = nilai

Cara lain untuk melakukannya adalah sample_dict = {key: value}

Jika Anda mencetak kamus ini, hasilnya adalah: {'key1': value, 'key2': value … }

  • Untuk mendapatkan kunci dan nilai kamus:

sample_dict.keys(): mengembalikan daftar kunci

sample_dict.values(): mengembalikan daftar nilai

sample_dict.items(): mengembalikan objek tampilan dari pasangan nilai kunci sebagai Tuple dalam daftar

Pelajari kursus ilmu data dari Universitas top dunia. Dapatkan Program PG Eksekutif, Program Sertifikat Tingkat Lanjut, atau Program Magister untuk mempercepat karier Anda.

Kesimpulan

Sangat penting untuk memahami pengetahuan dasar tentang struktur data dengan Python. Berada di industri Data, Struktur Data yang berbeda dapat membantu untuk mendapatkan solusi yang lebih baik dari algoritme yang mendasarinya. Itu membuat pengembang lebih sadar akan praktik pengkodean terbaik untuk mendapatkan hasil secara efisien. Penggunaan setiap struktur data sangat berdasarkan situasi dan membutuhkan latihan yang ketat.

Apa pentingnya struktur data?

Struktur data adalah salah satu pilar dasar dari setiap bahasa pemrograman. Mereka menentukan bagaimana data akan disimpan dan dimanipulasi dalam memori. Konsep struktur data tetap sama tidak peduli bahasa pemrograman mana yang sedang kita bicarakan.

Struktur data yang paling umum termasuk array, daftar, tumpukan, antrian, pohon, hashmap, dan grafik. Beberapa dari mereka built-in sementara yang lain perlu diimplementasikan oleh pengguna dengan bantuan struktur data yang telah ditentukan sebelumnya.

Bagaimana saya bisa mengembangkan pemahaman yang kuat tentang struktur data?

Konsep dasar implementasi dan cara kerja struktur data apa pun harus menjadi langkah pertama yang harus Anda ambil. Setelah terbiasa dengan konsep teoretis dan bekerja, Anda bisa mulai dengan bagian pengkodean.

Anda harus selalu mempelajari kompleksitas waktu dan kompleksitas ruang dari setiap algoritma atau struktur data yang sedang Anda kerjakan. Ini akan memberi Anda wawasan yang tepat tentang konsep tersebut, dan Anda akan dapat memecahkan pertanyaan apa pun yang memerlukan struktur data tertentu.

Kapan daftar Python lebih disukai untuk menyimpan data?

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.